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

いつもお世話になっております。

Excel2007を使用しています。
Excel2002も持っています。

Excel2003以前のファイル形式のファイルがあります。
拡張子がxlsのファイルです。

このファイルの中身を「マクロ」ですべて抜き出したいのですが、
どのようにプログラムしたら良いかと、疑問に思ってしまいました。
各セルの内容は、Tabキーもしくは、半角のスペースや全角のスペースを挟む形で、
抜き出せればと思っております。
※Ctrl+Aなどで、手動でクリップボードにコピーする方法を使用しない理由は、
 ファイルの数が非常に多いため、それではとても大変だと思うためです。

もしよろしければ、アドバイス頂けませんか?
ぜひよろしくお願いいたします。

A 回答 (2件)

こんばんは。



今、気になって試してみました。

http://www31.ocn.ne.jp/~h_ishida/xdoc2txt.html

ここにある、xdoc2txt.exe のActiveX版、xdoc2txt.ocx を使えば、Excel・Wordファイルを、ほとんどタイムラグなくテキストファイルをすべて取り出せることが分かりました。

DOS環境から設定をしますが、AciveX を登録して、マクロに組めばよいと思います。多少、VBAの経験のある方なら、すぐに使えるはずです。以前、xdoc2txt.exeでマクロを作ったことがありますが、ファイルに対して、そのつど、オーバーヘッドが掛かって、快適とは言えませんでした。

定番ツールのひとつだそうですから、試してみてよいかと思います。これは、思った以上に便利でした。

'サンプルマクロ
'-------------------------------------------

Sub XDoc2TextSample1()
  Dim objXDoc As Object
  Dim mPath As String, sText As String
  Set objXDoc = CreateObject("XDOC2TXT.xdoc2txtCtrl.1")
  
  mPath = Application.GetOpenFilename("Excel(*.xls),*.xls")
  If Filename = "False" Then Exit Sub
  sText = objXDoc.Convert(mPath)
  Debug.Print sText 'デバッグ・プリント
  Set objXDoc = Nothing
End Sub
'-------------------------------------------
    • good
    • 0
この回答へのお礼

ありがとうございます。
抜き出すことができました。
とても助かりました。

お礼日時:2009/11/03 20:56

#1のミス


×>If Filename = "False" Then Exit Sub
正しくは、
If mPath = "False" Then Exit Sub
でした。
    • good
    • 0

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