LoginSignup
kento971017
@kento971017

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

【VBA】テキストドキュメントをExcelに転記したいのですが、途中でエラーが出てしまう

解決したいこと!

初心者です。
テキストドキュメント(.txt)の内容をExcelに転記するVBAを組みたいのですが、途中まで問題ないのに『======工事について===』という行でエラーがでてしまうのはなぜでしょうか?
転記元のテキストドキュメントは画像として最下部に添付いたしました。

発生している問題・エラー

実行時エラー 1004!
アプリケーション定義またはオブジェクト定義のエラーです。

該当するソースコード

Sub テキストファイル貼り付け()
Dim buf As Variant
Open "C:\Users\usr0103316\Desktop\業務戦略\PKG追加改善\テスト.txt" For Input As #1

Dim r As Variant
    r = 1 '1行目から書き出す

    Do Until EOF(1)
        Line Input #1, buf

        Dim aryLine As Variant '文字列格納用配列変数
        aryLine = Split(buf, vbTab) '読み込んだ行をタブ区切りで配列変数に格納

        Dim i As Variant
        For i = LBound(aryLine) To UBound(aryLine)
            'インデックスが0から始まるので列番号に合わせるため+1
            Cells(r, i + 1) = aryLine(i)
        Next

        r = r + 1

    Loop

End Sub

### 自分で試したこと
これを回すと基本的にテキストドキュメントの各行ごとにExcelへ転記が行われるのですが、『===』が出てきたところでエラーが発生します。
『===』が影響しているのではと思っているのですが、対処法が分かりません。

お忙しいところ恐縮ですが、ご教示いただけますと幸いです。

スクリーンショット 2021-09-11 215223.png

0

2Answer

Comments

  1. @kento971017

    Questioner
    ありがとうございます!

=で始まる値が数式と解釈されてしまうからかなと思います。
セルに値を設定する前に書式を文字列として設定しておくと回避できると思います。

Cells(r, i + 1).NumberFormatLocal = "@"
0Like

Comments

  1. @kento971017

    Questioner
    ありがとうございます!

Your answer might help someone💌