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 2013 アイコン一覧(G)

    ・Office 2013 アイコン一覧 NUM…

  2. アイコン一覧

    Office 2013 アイコン一覧(T)

    ・Office 2013 アイコン一覧 NUM…

  3. Excel

    住所から郵便番号を取得するVBAマクロ

    「住所から郵便番号 VBA」といったキーワード検索でのアクセスがあった…

  4. Office関連

    [Excel VBA]PrintPreview後に印刷するとCtrl+;の日付形式が変わる?

    MSDNフォーラムで面白い質問がありました。・Excel …

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP