
EXCEL VBAでのテキストファイルのレコード読み込みについて教えてください。
EXCEL2003を使用しており、以下のレコードがあるテキストファイルがうまく
読み込めないのです。
レコード:
1件目「123■r456」
2件目「789■r888」
上記レコードをinput text命令で読みこむと1件目は「123」までしか読み込めず
2件目は「456」が読み込まれます。
3件目は「789」で読み込み終了となります。
本当は1件目が「123456」、2件目は「789」と読み込みたいです。
「■r」はホストコンピュータで使用している印刷イメージの制御コードです。
input text命令にオプションはあるのでしょうか?
またinput text命令以外にテキストファイルを読み込む命令はあるのでしょうか?
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
下記を参考に、readAllで文字列変数に丸ごと読み込んで
http://officetanaka.net/excel/vba/filesystemobje …
■rのところを、Replace関数などで置換して、
それからSplit関数で改行コードで切り分けるのはどうでしょうか。
事前にテキストエディターで、前処理して取り除くという解もありそうですが。
以上、ご参考まで。
回答、ありがとうございました。
mitarashiさんのおっしゃるとおり、実行してみたところうまくいきました。
ありがとうございました。
とても助かりました。
No.2
- 回答日時:
http://officetanaka.net/excel/vba/tips/tips89.htm
参考。
>input text命令にオプションはあるのでしょうか?
「1行」を読み込む機能か確認。
LINE INPUTでもダメだったか。
>■r
がバイナリでいうとどんな値か。一定値か。
3バイト+"■r"+3バイトと決まった位置に挿入されるかは
わかりませんが、そうなるなら規則的なので、
今の状態から「123■r456」を合成すれば、まだ対処可能です。
質問のための事例、と思われるので、これは規則性があれば、に限られます。
改行コードが1バイト「0D0F」になるので、
1バイトずつ読み込む仕組みに変える。
それで、『「0D0F」になるまでが1行』と解釈すれば対処は可能です。
親身に回答していただきありがとうございます。
とても参考になりました。
今回は「LINE INPUT」でもうまくいきませんでした。
また、規則性のないデータを使用しております。
説明不足で申し訳ありません。。。
すごくわかりやすい説明でとても感激しました。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- その他(プログラミング・Web制作) Pythonを勉強しています。 5 2023/08/25 09:51
- システム CPUの問題について 2 2022/07/09 12:04
- Ruby パイソンでテキストファイルが読み込めない 1 2022/11/14 16:42
- JavaScript Javascriptを使ってQRコード読み取り、取得した情報をPOSTしたいと思っています。 1 2023/04/28 15:18
- その他(コンピューター・テクノロジー) 量子コンピュータの動作原理がわかりません。同じビットが、1でも0でも有って良いだろうか? 3 2023/02/04 03:20
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Visual Basic(VBA) vbaのループ処理について 6 2022/05/06 15:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vbからmdbのレコード削除
-
ファイル書込みで一行もしくは...
-
DataGridViewの内容をDBに反映...
-
アクセスでレポートの1印刷内...
-
ADO VBA 実行時エラー3021
-
決定性有限オートマトン
-
Excelでセルの書式設定を使用し...
-
【アクセスVBA】テーブルにフィ...
-
ACCESSの集計クエリで3件ある...
-
Oracleでの文字列連結サイズの上限
-
Accessでのレコード存在チェック
-
MySQLで MAX()とGROUP BYを使う...
-
チェックボックスの項目をDBにi...
-
GROUP BYを行った後に結合した...
-
sqlで質問です。 Aテーブルの登...
-
SELECTで1件のみ取得するには?
-
エクセルのピボットテーブルの...
-
MySQLのクエリについて
-
sum()の出力結果順に並び替えを...
-
【初歩】ラジオボタンをつかっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコードが存在しなかった場合
-
DataGridViewの、選択されてい...
-
ADO VBA 実行時エラー3021
-
差し込み印刷のレコード数について
-
ACCESSで大量の更新を行うと「...
-
ファイル書込みで一行もしくは...
-
カレントレコードが無い事を判...
-
ワードの差込印刷で教えて下さ...
-
アクセスでレポートの1印刷内...
-
DataGridViewの内容をDBに反映...
-
[VBA] ADOの Clone と AddNew
-
固有レコード識別子の選択とは
-
JSPのNULLレコード表示について...
-
Access を×ボタンで閉じ...
-
サブフォームに新規レコードを...
-
データセットのレコード更新が...
-
サブレンジ分割されたNDB(富士...
-
レコードセット(ADO.Recordset)...
-
DataGridViewにてセル以外をク...
-
COBOLでのランダムアクセス
おすすめ情報