重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

ExcelVBAマクロについて確認させてください。
下記のようにWordファイルをテキストファイルに落として保存したファイルを
変数aに読み込んでいます。
このとき、読み込んだテキストファイルはWordファイルをテキストファイルに
落とし込んだファイルなので改行コードと改ページコードが残ってしまいます。
この改行コードと改ページコードを削除したうえで再度変数aに読み込むように
しようと思っています。

ですが、今のところReplace関数を考えているのですが、
改行コードは削除出来ましたが、改ページコードが削除出来ません。
改ページコードを削除するプログラムを考えているのですが、可能でしょうか。
改ページコードは"^L"か"↓"に似た文字で表示されるようです。

以上、ご教授のほどよろしくお願いします。

----------------------------------
Sub sample1()

Dim a As String

a = CreateObject("Scripting.FileSystemObject").GetFile("C:\sample.txt").OpenAsTextStream.Readall
a = Replace(a, vbCrLf, "") '改行コードの削除
CreateObject("Scripting.FileSystemObject").GetFile("C:\sample.txt").OpenAsTextStream.Close

End Sub

A 回答 (3件)

改行はvbCrLf  で表せるコード(VBの中では)と思う。

他のソフト(プログラム)の中では別かもしれないが)
段落内改行(↓)ならvbLfやChr(10)を試したら。
参考
ワードVBAの例
http://oshiete.goo.ne.jp/qa/5755737.html
ーー
どういうコードが入っているかは、16進で標示できるテキストエディタでそのファイルを読み込めば一番確実に判る。
ーー
それにしても質問のことを実現したとして、後に何がしたいのか、別途質問でもして、経験者にアドバイスもらったら。
初心者的なアイデアの路線に固執して、こうやりたのだ、と思っているように思う。
そのアイデアそのものが適当なのかどうか。
質問のようなことは普通質問には出ない。
文書情報などを扱うには、レコード(行)区切りがむしろ必要なはず。
    • good
    • 0
この回答へのお礼

早速のご助言ありがとうございます。
おかげさまでその改ページのコードが
判明できたのでそのコードを削除することが出来ました。

お礼日時:2012/01/21 01:22

そのテキストファイルを、バイナリエディタで見てみることをお奨めします。


改ページに相当するコードが分かれば、解決したも同然ですので。
「バイナリエディタ」で検索すればフリーソフトもすぐに見つかると思います。
    • good
    • 0
この回答へのお礼

早速のご助言ありがとうございます。
おかげさまでその改ページコードの文字コードを
見つけることが出来ましたので削除することが
出来ました。

お礼日時:2012/01/21 01:22

#1です。


参考までに。
私のやった、極く短文の、段落ない改行の例では
Sub test01()
Dim a As String
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objFile = objFS.GetFile("C:\Documents and Settings\XXX\My Documents\改行.txt")
Set objText = objFile.OpenAsTextStream
myText = objText.Readall
a = Replace(myText, vbCrLf, "") '改行コードの削除
MsgBox a
For i = 1 To Len(a)
x = Mid(a, i, 1)
MsgBox Asc(x)
Next
End Sub
では、コードでは32(スペース)になったようだ。
ワードをテキストで保存するときの設定を聞いて来る画面があるが、そこでまずかったのかも知れない。
上記コードで、何が入って居るか、判らないか役立てられれば役立てて。
    • good
    • 0
この回答へのお礼

早速のご助言ありがとうございます。
おかげさまでその改ページのコードが
判明できたのでそのコードを削除することが出来ました。

お礼日時:2012/01/21 01:22

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