VBScript

ドラッグ&ドロップされたファイルの内容をクリップボードにコピーするVBScript

clipコマンドを利用してクリップボードに文字列をコピーするVBScript」の応用で、ドラッグ&ドロップされたファイルの内容をクリップボードにコピーするVBScriptです。

下記コードではテキストファイルやCSVファイル、Wordドキュメント等に対応していますが、対応形式は必要に応じて追加することができます。

Option Explicit

Dim Args
Dim Cmd

Set Args = WScript.Arguments
If Args.Count < 1 Then
  WScript.Echo "当スクリプトにファイルをドラッグ&ドロップして処理を実行してください。"
  WScript.Quit
End If
With CreateObject("Scripting.FileSystemObject")
  Select Case LCase(.GetExtensionName(Args(0)))
    '対応形式は適宜追加
    Case "txt", "csv", "vbs", "js", "ini", "php", "cgi", "htm", "html", "xml", "css"
      Cmd = "cmd /c ""clip < """"""" & Args(0) & """"""""""
      CreateObject("WScript.Shell").Run Cmd, 0
    'Wordドキュメントの場合
    Case "doc", "docx", "docm", "rtf"
      CopyWordDocument Args(0)
    Case Else
      If Len(.GetExtensionName(Args(0))) < 1 Then
        If Lcase(TypeName(Args(0))) = "string" Then
          Cmd = "cmd /c ""echo " & Args(0) & "| clip"""
          CreateObject("WScript.Shell").Run Cmd, 0
        End If
      Else
        WScript.Echo "未対応のファイル形式です。"
        WScript.Quit
      End If
  End Select
End With
Set Args = Nothing
WScript.Echo "内容をクリップボードにコピーしました。"

Private Sub CopyWordDocument(ByVal FilePath)
'Wordドキュメントのコピー
  With CreateObject("Word.Application")
    .Visible = False
    With .Documents.Open(FilePath, False, True)
      .Content.Copy
      .Close 0
    End With
    .Quit 0
  End With
End Sub

cscript (ファイル名).vbs ABC」のようにコマンドプロンプトから引数として文字列を渡すこともできます。

関連記事

  1. VBScript

    ファイル選択ダイアログ

    ファイル選択ダイアログを表示するVBScriptをまとめてみま…

  2. VBScript

    clipコマンドを利用してクリップボードに文字列をコピーするVBScript

    clipコマンドを利用して文字列をクリップボードにコピーするVBScr…

  3. Windows 10

    Microsoft Update カタログから累積更新プログラムをダウンロードするVBScript

    「累積更新プログラム」とは、その名の通りOSを最新の状態に保つための更…

  4. Office関連

    「2014年12月のWindows Update以降コマンドボタンが使えなくなった」トラブルへのFi…

    当ブログでも「KB2553154の更新プログラムをアンインストールする…

  5. VBScript

    WordPressのバックアップを取ってローカル環境で動かす方法(3)

    「WordPressのバックアップを取ってローカル環境で動かす方法(1…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP