Office関連

選択範囲をOneNoteに送るVBAマクロ

OneNote プリンタードライバー([OneNote 20XX に送る]プリンター)を使ってドキュメントを印刷すると、印刷した情報がそのままOneNoteに送られます。
この機能を使えば簡単に選択範囲をOneNoteに取り込むことができるので、早速試してみました。

Option Explicit

Public Sub SendToOneNote()
'PrintOutメソッドを使ってOneNoteに選択範囲を送る
  Dim prnON As String
  Dim tmp As String
  
  prnON = GetOneNotePrinterName
  If Len(Trim(prnON)) < 1 Then Exit Sub
  tmp = Application.ActivePrinter
  On Error Resume Next
  Selection.PrintOut ActivePrinter:=prnON
  On Error GoTo 0
  Application.ActivePrinter = tmp
End Sub

Private Function GetOneNotePrinterName() As String
'OneNoteプリンター名取得
  Dim ret As String
  Dim colItems As Object
  Dim itm As Object
  
  ret = "" '初期化
  On Error Resume Next
  Set colItems = CreateObject("WbemScripting.SWbemLocator").ConnectServer.ExecQuery("Select * from Win32_Printer")
  For Each itm In colItems
    If InStr(LCase(itm.DriverName), "onenote") Then
      ret = itm.Name
      Exit For
    End If
  Next
  On Error GoTo 0
  GetOneNotePrinterName = ret
End Function

上記の通り、単にプリンターとしてOneNote プリンタードライバーを指定して選択範囲を印刷しているだけのマクロですが、とりあえず、これで簡単にExcelデータをOneNoteに送ることができるようになりました。

「データ追跡機能付きテンプレート ウィザード」のダウンロード先前のページ

2014年7月の人気記事次のページ

関連記事

  1. Office関連

    ディスプレイのサイズを取得するVBAマクロ

    「VBA ディスプレイ 幅 高さ」といったキーワード検索でのアクセスが…

  2. Power Automate for desktop

    たった1行でPower Automate for desktop(PAD)から自由自在にExcelを…

    ※ 本記事は「RPA(ロボティック・プロセス・オートメーション) Ad…

  3. Office関連

    SkyDriveの同期フォルダーのパスを取得するWordマクロ

    無料で使える便利なクラウドストレージ「SkyDrive」にはローカルフ…

  4. Office関連

    プログラムのソースコードを別の言語に変換するVBAマクロ

    SharpDevelopが公開している、ソースコードを変換するAPI「…

  5. アイコン一覧

    Office 365アイコン(imageMso)一覧(I)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP