- ベストアンサー
ExcelVBAマクロでの改ページコードの削除方法
- ExcelVBAマクロについて確認させてください。Wordファイルをテキストファイルに変換して保存し、改行コードと改ページコードを削除したいと考えています。
- 現在、Replace関数を使用して改行コードを削除することができましたが、改ページコードの削除方法について悩んでいます。
- 改ページコードは'^L'か'↓'のような文字で表示されるようです。改ページコードを削除するプログラムを作成する方法があれば教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
改行はvbCrLf で表せるコード(VBの中では)と思う。他のソフト(プログラム)の中では別かもしれないが) 段落内改行(↓)ならvbLfやChr(10)を試したら。 参考 ワードVBAの例 http://okwave.jp/qa/q5755737.html ーー どういうコードが入っているかは、16進で標示できるテキストエディタでそのファイルを読み込めば一番確実に判る。 ーー それにしても質問のことを実現したとして、後に何がしたいのか、別途質問でもして、経験者にアドバイスもらったら。 初心者的なアイデアの路線に固執して、こうやりたのだ、と思っているように思う。 そのアイデアそのものが適当なのかどうか。 質問のようなことは普通質問には出ない。 文書情報などを扱うには、レコード(行)区切りがむしろ必要なはず。
その他の回答 (2)
- MasMo
- ベストアンサー率45% (5/11)
そのテキストファイルを、バイナリエディタで見てみることをお奨めします。 改ページに相当するコードが分かれば、解決したも同然ですので。 「バイナリエディタ」で検索すればフリーソフトもすぐに見つかると思います。
お礼
早速のご助言ありがとうございます。 おかげさまでその改ページコードの文字コードを 見つけることが出来ましたので削除することが 出来ました。
- imogasi
- ベストアンサー率27% (4737/17070)
#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(スペース)になったようだ。 ワードをテキストで保存するときの設定を聞いて来る画面があるが、そこでまずかったのかも知れない。 上記コードで、何が入って居るか、判らないか役立てられれば役立てて。
お礼
早速のご助言ありがとうございます。 おかげさまでその改ページのコードが 判明できたのでそのコードを削除することが出来ました。
お礼
早速のご助言ありがとうございます。 おかげさまでその改ページのコードが 判明できたのでそのコードを削除することが出来ました。