• ベストアンサー

VBもしくは、VBAでのメモ帳の起動

こんにちは。 VBもしくはVBAというプログラミングでメモ帳を開きたいのですが、WORD等のようにマクロの記録やVBAがありません。 行いたいことは、特定のフォルダーに入っている複数の既存のメモ帳を、OUTLOOKに入れたいのですが、VBAのサイトを探してもOUTLOOKのVBAというのがあまりありません。 WORDのマクロでWORDに貼り付けるのでも良いのですが、既存の複数のメモ帳を開いて、WORDなどには入れられないでしょうか? 自分で試行錯誤した限りでは、メモ帳単体のパスを指定すれば出来たのですが、EXCELのbook1、book2のように不特定のファイルを順番に開きたいと思っています。 使っているのは、WINDOWS XPとOFFICE XPです。 どなたか、お知恵を貸してください。 よろしくお願いします。 aki

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

何をなさりたいのか、よくわからないのですが、 まず確認として「メモ帳」というのはアプリケーションの名前です。 メモ帳で扱える形式のファイルは、テキストファイルと呼ばれ、 通常、拡張子は".txt"になります。 > 行いたいことは、特定のフォルダーに入っている複数の既存のメモ帳を、OUTLOOKに入れたいのですが、VBAのサイトを探してもOUTLOOKのVBAというのがあまりありません。 とのことですので、例としてc:\My Documents フォルダにある拡張子txtのファイルを Outlook のメモに追加するコードです。 Outlook の標準モジュールに記述して実行してみてください。 Sub test() Dim myItem As NoteItem Dim myFSO As Object Dim myFolder As Object Dim myFile As Object Dim myTS As Object Set myFSO = CreateObject("scripting.Filesystemobject") Set myFolder = myFSO.getfolder("c:\my documents") For Each myFile In myFolder.Files If myFSO.GetExtensionName(myFile) = "txt" Then Set myTS = myFSO.OpenTextFile(myFile) Set myItem = CreateItem(olNoteItem) With myItem .Body = myTS.ReadAll .Save End With myTS.Close End If Next Set myItem = Nothing Set myFolder = Nothing Set myFSO = Nothing End Sub

aki_2424
質問者

お礼

ありがとうございます。 コードまで載せていただいて感謝します。 EXCELのbook1.book2のように考えていたのが間違えでした。 拡張子を頼るという発想自体ありませんでした。 非常に勉強になりました。 自分でコードを解読しながら作って見たいと思います。ご丁寧な回答本当に感謝します。 ありがとうございました。 aki

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

プログラミングMicrosoft Outlook マイクロソフト公式解説書・日経BPソフトプレス Microsoft Outlook97 アプリケーション開発技法 MicrosoftPRESS MICROSOFT PROFESSION アスキー (以上AMAZONで検索)そのほか1冊図書館にあった が書名を控えていなかった。 があるように、OUTLOOKのVBAの解説書はありますが少ないですね。 メモ帳は開くのはご存知shellで http://hp.vector.co.jp/authors/VA012219/faq/vbfaq3.htmで開けますが、その後のいろいろな処理がVBで続けられない。 VBAに当たるものはメモ帳にはないと思います。しかし 機能だけなら、VBやJAVAの解説書に解説がありますので自作することも可能かと思います。テキストファイルを開いて貼り付けるならメモ帳に拘る必要はないのでは。「既存の複数のメモ帳を開いて」の「メモ帳」とはテキストファイルではないのですか。であれば、メモ帳に拘る必要はないと思います。当初メモ帳と言うソフトで作成したものであっても、テキストファイルであれば、VBから開けるのはご存知と思います。メモ帳ではその他のファイル 形式の保存は出来なかったと思います。 あるフォルダを指定して、そのフォルダないのファイル名を知ることがVBで出来ますので、その方法をべんきょうされたらどうでしょうか。OUTLOOKのVBAの中からテキストファイルのOPEN、INPUT#などは発行 出来るはずです。

aki_2424
質問者

お礼

outlookのVBA本が出ていることすら知りませんでした。 探し足りませんでした。 もう一度、探してみます。 アドバイス、ありがとうございました。 aki