
固定長データのテキストファイルをExcelで読み込むと、スペース部分が前詰めされてしまいます。
スペースもそのままカラムとして読み込む方法はありませんでしょうか。
例えば次のような固定長データがあるとします;
No. 項目名 タイプ 桁数
1 コード 文字 6
2 状態 文字 10
テキストファイルで開くと下記のような表示です(以下、便宜上スペースを”_”で表します);
data011________1
data02_________1
data03____1_____
これをExcelにて固定長フィールドのデータとして読み込む際、
フィールドの区切り位置として6カラム目と16カラム目に矢印を置き
全てのフィールドを文字列として読みこむとExcelでは下記のように表示されます;
A列 B列
1行目 data01 1________1
2行目 data02 1
3行目 data03 1
ここで、B2セルとB3セルがそれぞれ
_________1
____1_____
とスペースを保持したままの形で読み込む方法はありませんでしょうか。
手動でもVBでもかまいません。ご教示頂ければ幸いです。
No.1ベストアンサー
- 回答日時:
固定長ですがシーケンシャルで読み出すので十分と思います。
Sub macro2()
Dim buf As String
Dim i As Long
Range("A:B").NumberFormat = "@"
Open "c:\test\data.txt" For Input As #1
Do Until EOF(1)
i = i + 1
Line Input #1, buf
Cells(i, "A") = Mid(buf, 1, 6)
Cells(i, "B") = Mid(buf, 7, 10)
Loop
Close #1
End Sub
全て理解できたわけではありませんが
ご教示頂いた内容にて、こちらの希望する通り
カラム数を保持したまま読み込むことができました。
引き続き勉強しつつ、回答頂いた内容を利用させていただきます。
ご回答ありがとうございました。
No.3
- 回答日時:
質問の書き方だが、テキストファイルの「状態を、スペースは*でも置き換えて、質問に3レコードぐらい書いて質問をすればよくわかる。
これは、データー区切り位置ースペースによって・・・-次へー上向き↑線をdata01のあとにクリックしていれて、行う操作の「結果」の質問ですよね。
(>>フィールドの区切り位置として6カラム目と16カラム目に矢印を置き・・)
現状の質問文では、上記操作のことやデータの状態が判りにくい。
最初のフィールドは、設計上6桁で、必ず6桁のデータが入っているなら6桁セルに移せば仕舞いでは。
第2フィールドは右寄せで20桁の状態はどうなっているのか。
2フィールドで終わりなら、16桁目に矢印を普通入れないのでは。
3/3の画面で7桁以後を文字列に指定しても、セルにセットされたデータでは後尾のスペースは付かない。これが困るのか?
申し訳ございませんが、私の日本語能力では
頂いた内容が質問への回答であるとは読み取れませんでした。
ちなみに2フィールドで終わりでも矢印を入れないと
2フィールドのカラム数が果てしない事になってしまう
(少なくともこちらが希望するものにはならない)のですが
回答者様の場合は問題ないのでしょうか。
(これもExcelのバージョンによるものでしょうか)
総じてよくわからないのですが、状況として困るので質問させていただきました。
他の方の回答にて対応いたしますので、またの機会には
わかりやすい日本語にてご教示いただければ幸いです。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) accessでexcelを読み込む時のデータ型 1 2022/03/28 19:45
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- その他(プログラミング・Web制作) 【python】Excelファイルを読み込む際の日付の表示形式を任意にする 2 2022/11/24 14:21
- その他(プログラミング・Web制作) プログラミング python pandas 固定長データの出力 2 2022/08/16 11:22
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- docomo(ドコモ) スマフォで急に文字が小さくなってしまった 4 2023/06/11 10:18
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLローダーCSV取込で、囲み文...
-
テーブルの最後(最新)のレコー...
-
配列に指定した値が含まれてい...
-
一つのフィールドに複数の外部...
-
バッチ処理に関して
-
myadminのインポートについて
-
int型フィールドにnullを登録で...
-
2回実行のSQL文を1回にしたい
-
BLOBやCLOBのパフォーマンスを...
-
where句中のtrim関数について
-
SELECT FOR UPDATE で該当レコ...
-
BLOB型項目をSQLの検索条件に指...
-
1の行を固定した上でVBAを用い...
-
SQLデータベースの処理
-
ファイルの漢数字の順番につい...
-
デフォルトでデータが表示され...
-
並べ替えについて
-
単一グループのグループ関数で...
-
ハイフンの入ったデータの並べ替え
-
SQL文 複数実行
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLローダーCSV取込で、囲み文...
-
テーブルの最後(最新)のレコー...
-
BLOBやCLOBのパフォーマンスを...
-
int型フィールドにnullを登録で...
-
SELECTした合計値をそのまま割...
-
配列に指定した値が含まれてい...
-
テーブルのフィールドの一番長...
-
2回実行のSQL文を1回にしたい
-
Null値件数をカウントする式に...
-
ファイルメーカーのフィールド...
-
固定長データのテキストファイ...
-
ACCESSのクエリで空白以降を別...
-
CSVからNULL値をインポート
-
MySQLでの近似値順での値の取得...
-
REGEXPで希望の動作をしてくれない
-
郵政省の郵便番号を取り込みた...
-
【MySQL】 DECIMAL(2,1) に 13...
-
date型のselect について
-
phpmyadminで条件付きの検索置...
-
入力データの半角スペースと全...
おすすめ情報