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. Excel

    ドラッグ&ドロップしたOfficeファイルをPDFに変換するVBScript

    複数のExcelファイルをPDFに一括変換する必要があったので、簡単な…

  2. VBScript

    パスワードに使えそうなランダムな文字列を作成するVBScript

    前回の記事の続きです。前回はGUIDを作成するスクリプトでした…

  3. VBScript

    GUIDを作成するVBScript

    Office アドインを作成するのに必要(マニフェストのId要素)なG…

  4. VBScript

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

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

  5. VBScript

    Illustratorに登録されたPDFプリセットを列挙するVBScript

    前回の記事で、VBSからIllustratorが操作できることを紹介し…

  6. VBScript

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

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

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP