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関連

    [リボン・カスタマイズ]カスタムタブを共有する。

    ※ 2015/2/18 コードに一部誤りがあったので修正しました。…

  2. Office関連

    「DQNネーム辞書」を更新しました。

    前のブログで公開していたIME 2010用の「DQNネーム辞書」を更新…

  3. Office関連

    Evernote Cloud SDKを使ったVBAマクロ

    3年ほど前にEvernote for Windowsを操作するVBAマ…

  4. Office関連

    ヘッドレス ChromeをSeleniumBasicで動かしてみました。

    Chromeがヘッドレスモードに対応した頃、Seleniumで操作した…

  5. Office アドイン

    [Office用アプリ]OneNote Clipperをアプリから使う。

    先日Chrome版が公開された、「OneNote Clipper」です…

  6. Office関連

    [Office 365 Solo]テクニカル サポートってどんなもの?

    前々回の記事に引き続いて、Office 365 Soloの疑問点第三弾…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP