Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまいます
どなたかご教授願います。また、別コードありましたら教えてください
お願い致します。ファイルは、UTF-8表示です
下記コード使用
Sub Txt統合()
' マージするテキストファイルを集めたフォルダーを指定
Dim FileFolder As String
FileFolder = ThisWorkbook.Path & "\txt"
' そのフォルダー内のテキストファイルの名前を取得
Dim FileName As String
FileName = Dir(FileFolder & "*.txt ")
Dim FilePath As String
FilePath = FileFolder & "\" & FileName
Dim Buffer As String '一時的に文字列を格納する
Dim A As Variant '文字列格納用配列
ReDim B(99, 99) '文字列格納用配列
Dim i As Long
i = 0
Dim j As Long
j = 0
'使用可能なファイル番号を取得
Dim FileNumber As Long
FileNumber = FreeFile
'フォルダ内のすべてのテキストファイルを処理する
Do Until FileName = ""
Open FilePath For Input As #FileNumber
Debug.Print FileName
Do While Not EOF(FileNumber)
Line Input #FileNumber, Buffer
Debug.Print Buffer
A = Split(Buffer, vbTab)
For j = 0 To UBound(A)
B(i, j) = A(j)
Next j
Loop
Close #FileNumber
FileName = Dir()
i = i + 1
Loop
Range("A1").Resize(100, 100) = B
MsgBox "処理が終了しました。", vbInformation
End Sub
No.3ベストアンサー
- 回答日時:
UTF-8用に修正しました。
(i=i+1の位置がおかしいところ等も修正してます。)
UTF-8(BOM無)で確認しました。
このサイトに投稿するとエラーになるので、下記にアップしました。
https://ideone.com/YFZQ7u
No.4
- 回答日時:
こちらで確認したデータです。
以下の内容のファイル(文字コード:UTF8)を1つ作成しまsました。
漢字データ11<tab>漢字データ12<tab>漢字データ13<改行>
漢字データ21<tab>漢字データ22<tab>漢字データ23<改行>
漢字データ31<tab>漢字データ32<tab>漢字データ33<改行>
注意:
<tab>:タブ
<改行>:改行コード
の意味です。
添付図のような結果になりました。
あなたのファイルは、タブで区切られていますでしょうか。
ファイルの内容はどのようになっていて、どのようにシートに表示されたのでしょうか。
(設定対象のシートはアクティブシートなので、そのシートを表示した状態でマクロを実行してください)
No.2
- 回答日時:
そのファイルにはBOMがついてますか?
それともついていませんか?
UTF-8の場合、BOMの有無により読み込み方法が異なります。
添付図はUTF-8のファイルをメモ帳(windows10のメモ帳)で読み込んだ倍です。上の図がBOMつきの場合、下の図がBOMなしの場合です。
まず、BOMの有無について確認してください。
BOMの有無により、対応が異なります。
BOMについては下記が参考になるかと。
https://at.sachi-web.com/blog-entry-1080.html
No.1
- 回答日時:
おはようございます!
検索した記事ですが、下記が参考になるでしょうか?
文字化けよさようなら!エクセルVBAでUTF-8のCSVを読み込む方法
https://tonari-it.com/vba-csv-utf8/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
複数のテキストファイルをexcelでそれぞれ別シートに書き出したい
Excel(エクセル)
-
【VBA】テキストファイルから特定の文字列を抽出して、エクセルに出力する
Excel(エクセル)
-
EXCEL VBAでテキストファイルの特定の場所にデータを書き込む方法
Visual Basic(VBA)
-
-
4
複数のテキストファイルを一括でエクセルに取り込みたい。
Excel(エクセル)
-
5
【VBA】複数のtxtファイルから特定区間の複数行を呼び出し、エクセルにまとめたい。
Visual Basic(VBA)
-
6
マクロを使ってフォルダー内にあるtxtデータをエクセルにデータに変換する方法をご教授願います
Excel(エクセル)
-
7
【VBA】テキストファイルを指定行数からの読み込み
Visual Basic(VBA)
-
8
Excel VBA読み込みで文字化けが
Visual Basic(VBA)
-
9
テキストファイルからデータを削除したい。
Visual Basic(VBA)
-
10
VBAでテキストファイルを複数開いて順番に処理する方法がわからないです。
Visual Basic(VBA)
-
11
Excel VBAでフォルダ内の全テキストファイルの任意データを取得について
Visual Basic(VBA)
-
12
同一フォルダにある複数のテキストファイル(メモ帳)を一括でエクセルに取り込みたいです。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
同一フォルダにある複数のテキ...
-
【VBA】テキストファイルを指定...
-
複数のテキストファイル内の複...
-
アスキー、バイナリーの違い、...
-
句点で改行
-
Excelにて、フォルダ内のTextフ...
-
VBAでテキストファイルを最後ま...
-
UNIXの<ファイル名>\\rの意味
-
unixのシェルスクリプトで特定...
-
Matlabでリストにあるファイル...
-
VBSを使用し、指定フォルダ内の...
-
ファイルのアクセス回数について
-
エクセルvbaでdocuworksprinter...
-
エクセルのプロパティーでセキ...
-
バッチファイル 二つ上のディ...
-
エクセルで複数のコメントのサ...
-
ExcelブックをGoogleスプレッド...
-
Windows10でコマンドプロンプト...
-
Wordで差込印刷した後に別々の...
-
VBA 最新のフォルダ取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】テキストファイルを指定...
-
EXCELのVBAでEOFを誤認識
-
アスキー、バイナリーの違い、...
-
同一フォルダにある複数のテキ...
-
Excelにて、フォルダ内のTextフ...
-
VBScript(vbs)での行の取得につ...
-
複数のテキストファイル内の複...
-
uwscでExcelに自動記入
-
テキストファイルの最終行を消...
-
VBAでテキストファイルを最後ま...
-
VBで複数のテキストを結合する...
-
VBSを使用し、指定フォルダ内の...
-
unixのシェルスクリプトで特定...
-
Java バブルソート
-
xmlファイルから文字列の読...
-
vbaでテキストファイル(*.txt...
-
句点で改行
-
【VBA】テキストファイルの内容...
-
スペース区切りのテキストファ...
-
VBでのテキストファイルへ参照...
おすすめ情報
ありがとうございます。
そのファイルにはBOMがついてますか?
それともついていませんか?
回答⇒BOM無のファイルです
お忙しいところ対応していただきありがとうございます
確認したところ、やり方悪いのか
処理が終了しましたとメッセージ後
A列に表示してくれません(Excel2019使用)何度かトライしたのですがうまくいかな状況です
すみません
すみません
ご指摘の通りのファイルを表示させ実行し動作することを
確認いたしました
お手間を取らせてしまいすみませんでした
丁寧な対応
ありがとうございます