teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

最後の文章をより分かりやすくしました。「行っています→OpenTextを呼んでいます。」

2018/03/10 12:35

投稿

diracpaul
diracpaul

スコア157

answer CHANGED
@@ -1,7 +1,8 @@
1
1
  テキストファイルの拡張子が".csv"ではなく、".txt"であれば、Workbooks.OpenTextを使うと001などを数値ではなく、"001"の文字列として取り込むことが可能となります。
2
+
2
3
  OpenTextの引数の中にfieldInfoがあります。このfieldInfoは、配列形式の引数ですが、読み込む全てのフィールドの型を定義することができます。このフィールドの型として文字列型(xlTextFormat=2)を指定すれば、文字列として読み込むことが可能です。
3
4
  詳しくは、以下のURLをご確認ください。
4
5
  [http://excel.style-mods.net/tips_vba/tips_vba_9_03.htm](http://excel.style-mods.net/tips_vba/tips_vba_9_03.htm)
5
6
 
6
7
  なお、上記のURLでは、読み込むファイル名の拡張子が".csv"となっていますが、"001”を"1"ではなく、"001"にするには、拡張子が".txt"でないと動作しないようです。
7
- 私の場合は、拡張子が違っている場合には、一度、拡張子が".txt"のファイルにコピーしてから行っています。
8
+ 私の場合は、拡張子が違っている場合には、一度、拡張子が".txt"のファイルにコピーしてからOpenTextを呼んでいます。