プロが教えるわが家の防犯対策術!

テキストボックスに作成したデ-タをコピ-ボタンでコピ-して、OutlookExpress
などのメ-ラ-に貼り付けるようなコ-ドを書いていますが、コピ-が上手くいかない
ことが多いので、下のような方法に変えようと思います。

 (1)テキストデ-タを作成(記入)する

 (2)コマンドボタンをクリックする

 (3)自動でメモ帳が起動する

 (4)メモ帳の内容に先ほどのテキストデ-タが貼り付く
    (テキストボックスの内容をメモ帳で開く)

このようにする方法はあるのでしょうか?
shellでメモ帳を開くというのは分かるのですが、対象のファイルを
どのように指定すれば良いのかが分かりません。

よろしくお願いいたします!!!

A 回答 (3件)

こんにちは。

maruru01です。
違う方法を。

いったん一時ファイルとして保存し、Shellでメモ帳で呼び出します。

memoPath = (メモ帳の起動ファイルのフルパス)
FilePath = (一時ファイルのフルパス)
fileNum = FreeFile
Open FilePath For Output As #fileNum
  Print #fileNum, Text1.Text
Close #fileNum

Shell memoPath & " " & FilePath

では。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
一時ファイルを作り、それをshellで起動して
最後にkillで一時ファイルを削除するという方法にしました。

   Shell memoPath & " " & FilePath  のところで

ちょっと悩みましたが、なんとか完成できました。
また何かありましたら、ご助言をお願いします!

お礼日時:2002/03/13 22:24

こんにちは。

itohhといいます。

先を越されてしまいましたが。
アドバイスを書いてしまったのでこのまま投稿します。

No.1のかたのアドバイスにもう少しひねりを入れてみました。

ClipboardとSendKeysを組み合わせてみてください。

例。
Private Sub cmdCut_Click()

  Clipboard.Clear
  Clipboard.SetText txtEdit

  Call Shell("c:\\winnt\\notepad.exe", vbNormalFocus)

  SendKeys "^V"

End Sub

txtEditとは、テキストボックスの名前です。
インデントのために行の先頭に全角スペースを入れています。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

試みてはみたのですが、SendKeys の使い方がいまいち
分からなかったので、maruru01さんに教えていただいた
方法にしました。
初心者なもので、すみません。
また何かありましたら、ぜひ教えてください!

お礼日時:2002/03/13 22:29

クリップボードを使用すれば良いのでは?



ボタン_Clickイベントに

Clipboard.clear
Clipboard.SetText テキストボックス名.Text, vbCFText

と記述しておいて、目的のところで「貼り付け」。
    • good
    • 0
この回答へのお礼

ご回答いただき、ありがとうございました。

クリップボードへのコピーは分かったのですが、
それを新規のメモ帳に貼り付ける方法が分からず
断念しました。
VBはまだまだ分からないことだらけで、日々悩んでます。
また質問しましたら、ぜひ教えてください。
ではでは。

お礼日時:2002/03/13 22:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!