新規作成したテキストファイルを名前を付けて保存するには?


VB修行中  2006-09-17 14:21:07  No: 96649

Word文書をテキストファイルに出力したいのですが、
SaveAsメソッド(第二引数wdFormatText)では、
Word文書に含まれている一部の文字(シングルクォート)が自動で?別の文字(シングルクォート)に変換されてしまいます。

手動で文書をコピーし、ノートパッドにコピー&ペーストすると変換されないことを確認したので下記方法を試みました。

1.WordのOpenメソッド、Copyメソッド
2.Shell関数でノートパッドを起動
3.SendKeys ("^V")でペースト

その先、名前を付けて保存する方法がわかりません。
どなたかご教授のほど、よろしくお願いいたします。


.  2006-09-17 20:20:47  No: 96650

1.でコピーしたテキストをVBで保存ってのはどうですかね。
notepadから保存したいのであれば、保存する時の操作をsendkeyで送ればなんとかなるかもしれませんが。
もっと効率のいい方法があるかもしれませんがこれしか思いつきませんでした…


VB修行中  2006-09-17 21:52:04  No: 96651

.さんコメントありがとうございます。

>1.でコピーしたテキストをVBで保存ってのはどうですかね。
すみません、VBで保存とはどのような方法でしょうか?

>notepadから保存したいのであれば、保存する時の操作をsendkeyで送ればなんとかなるかもしれませんが。
SendKeys ("^V")でノートパッドに1.でコピーしたテキストをはりつけし、
SendKeys ("%FA")で名前を付けて保存ダイアログを表示できますが、
次にどうしていいかわからないのです。


VB修行中  2006-09-17 22:26:50  No: 96652

SendKeys ("%(FA)")
Sendkeys ("ファイル名")
SendKeys ("%S")
で保存できました。(すみません、こんなこともわかっていませんでした)
他にスマートな方法があればいいのですが、、、


Loki  2006-09-17 23:53:11  No: 96653

>1.WordのOpenメソッド、Copyメソッド
というのをやったことがないので不確かですが、
1.でクリップボードにワードの文書がコピーされた後はこう書けばいいんではないでしょうか。

Open "sample.txt" For Output As #1
    Write #1, Clipboard.GetText      'ファイルにクリップボードの内容を書き込む
Close #1
動作確認、例外処理などは行っていません。


ヤマ@文系  2006-09-18 18:08:47  No: 96654

スマートにということであれば、オブジェクトとして扱う方法が
花ちゃん様のサイトに色々サンプルコードがあったとおもいますが、、


VB修行中  2006-09-24 09:52:08  No: 96655

Loki様、ヤマ@文系様ありがとうござました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加