• ベストアンサー

Excel VBAにてtextファイルの読み込み

happypointの回答

  • ベストアンサー
  • happypoint
  • ベストアンサー率36% (521/1422)
回答No.3

こんにちは。#1です。当方はExcel2002です。 開こうとするファイルのファイル名(パス)を取得するための、サンプルを以下に示します。 参考にしてみてください。 このコードは標準モジュールに貼り付けてください。 Option Explicit Sub GetFileNameTest() Dim myOpenFileName As Variant '[ファイルを開く]ダイアログ  myOpenFileName = Application.GetOpenFilename("テキストファイル (*.txt), *.txt")  If myOpenFileName = False Then Exit Sub '[キャンセル]ボタンのとき、処理を抜ける 'ファイル名の表示  MsgBox myOpenFileName '実際には、このmyOpenFileNameを、読み込み処理で利用します。 End Sub

Qbon9
質問者

お礼

happypointさん。ご回答どうもありがとうございました。 貼り付けて試したところあっさりできました! もっと勉強しなくてはならないですよね。。がんばります。

関連するQ&A

  • エクセルのマクロでテキストファイルを生成するには?

    いつもお世話になっております。 マクロで エクセルのSheet1上のA1:A5のデータをコピーして 『吐き出し.txt』というテキストファイルを生成したいのです。 どのようなマクロを書けばよいかご教示ください。 通常の「txt形式で保存」ですと、 データ内に「,」があるため、 テキストファイルだとデータの両端に「"」がついてしまうため 不具合が発生するのです。 なんとかなりませんでしょうか。 よろしくお願いいたします。

  • VBA 新規ファイルを元ファイルと同じ場所に保存する方法

    こんにちは。VBA初心者です。 エクセルファイルのシートを、いろいろ行を増やしたり計算を自動にするようにして、 最後にテキスト形式にするためのマクロをつくっております。 元のエクセルファイルの対象のシートをコピーして、新しいファイルを作成しペースト→保存→ファイルを閉じるところまでなんとかできました。 現在、下記のコードで新しいファイルは「マイドキュメント」に保存されていますが、元のエクセルファイルと同じ場所に保存したいのですが、どのようにコードを書けばよろしいでしょうか。 教えていただけますと幸いです。宜しくお願い申し上げます。 Sheets("TXT").Copy Sheets("TXT").SaveAs FileFormat:=xlCurrentPlatformText, Filename:="今月.txt" With Workbooks("今月.txt") .Saved = True .Close

  • テキストファイルとして開くVBA

    フォルダC:\Users\USER\Desktop\あいう において このダイアログを開いて そのなかのファイル(A.xml)を txtファイルとして開いて その名前を テキスト.txt として 同名で保存したいのですが Dim FileName As Variant Dim NewFile As TextFile FileName = Application.GetOpenFilename() Set NewFile = TextFile.Open(FileName) NewFile.SaveAs "テキスト.txt" Activetxtfile.SaveAs FileName:="C:\Users\PC\Desktop\あいう\テキスト.txt", FileFormat:=TextFile どうも違うようです 御教示ください

  • EXCEL 2003のVBAでテキストファイルの取り込み方

    EXCEL 2003のVBAでテキストファイルの取り込み方 EXCEL 2003のVBAでテキストファイルのみをとりこむものを組もうと思います。 - 読み込むテキストファイル名は一定の決まりがあります。AAxxxx.txt あるいは ZZxxx.txt といった感じで先頭文字はAAまたはZZで中のxxxは数字の可変(日付)です。 - Directoryはどこに入るか決まりがありません。(このマクロを使用するユーザーがどこのDirectoryにテキストファイルを保存しているかわからないため) FILEN = Application.GetOpenFilename If FILEN = False Then Exit Sub End If Workbooks.OpenText Filename:=FILEN でやると、Directoryの問題は解決しますが、テキストファイル名を絞り込めません いい方法をご教示いただければ助かります。

  • Excel「テキストファイルのインポート」

    Excelの「テキストファイルのインポート」によってテキストファイル(仮に「a.txt」)をワークシート上に読み込んだ状態で、「a.txt」を削除しようとすると、「ファイルが開かれているため削除できない」旨のエラーメッセージが表示されます。 このとき、Excel上では「a.txt」が開かれていることは確認できませんが、マクロを使うなどの手段を用いると「a.txt」を閉じることはできるのでしょうか? 「a.txt」をインポートしたファイルを保存してしまえばいいことはわかっているのですが、あくまでインポートした直後の状態で「a.txt」を削除する手段を探しています。

  • テキストファイルからデータ読み込みに関して。

    皆さん、始めまして。 テキストファイルのデータからエクセルへ読み込むエクセルマクロを構築したく質問させて頂きました。 テキストデータでリストの一覧をExportできるのですが、その整理が非常に手間なので自動化したく マクロを作成する事を検討しております。 環境はデータ内容を下記に記載させて頂きます。 [環境] Windows7 / Excel2007 [テキストデータサンプル] 下記に貼り付けたように条件によって出力方法が違うデータがあります。 ・レコードが1つのものは項目がたてに並んでいる。 ・レコードが2つ以上になると項目が横にならぶ。 処理番号 : 001-H20120910001 処理記録 ---------------------- 記録 日時    年齢   地域 0 20120712 63 東京 1 20120912 63 東京 (結果数 = 2) --- END 処理番号 : 001-H20120919999 処理記録 ---------------------- 記録 = 0 日時 = 20120909 年齢 = 19 地域 = 神奈川 (結果数 = 1) --- END [実行後に得たい情報] 処理番号で検索し、その中のデータを下記ならびでエクセルデータに変換したいと考えています。 001-H20120910001 0 20120712 63 東京 001-H20120910001 1 20120912 63 東京 001-H20120919999 1 20120909 19 神奈川 エクセルのマクロは勉強をし始めたばかりで初心者程度の知識ですが、 もしよろしければご回答、ご助言いただければと存じます。 よろしくお願いいたします。

  • エクセルファイルのやりとりについて

    仕事でエクセルファイルをメールでやりとりすることになりました。 しかしながら、相手方がウィルスに感染していて、エクセルファイルにウィルスが組み込まれてしまう可能性を懸念しています。 そこで、マクロを含まないただの数値データの場合ですが、 エクセルで作成したデータを.csv や .txt 形式で保存してもらいそれを送ってもらう ことは、ファイルを開いたときに攻撃を受けないようにする対処として有効でしょうか? ご回答いただけると幸いです。

  • エクセルVBAでテキスト保存

    エクセルのファイルをメモ帳で保存する場合に下記のコードが書いてあります。 strFILENAME = xlAPP.GetSaveAsFilename(InitialFileName:="データxxx_yyy_zzz.txt",FileFilter:=cnsFILTER, Title:=cnsTITLE) このうち、ファイル名の"データxxx_yyy_zzz.txt"、xxx, yyy,zzzをそれぞれ、特定のセルから取得したい場合、どのように直せばいいのでしょうか? xxx=A1セル yyy=A2セル zzz=A3セル といった感じです。 よろしくお願いします。

  • テキストファイルの読み込みについて

    PHP4を使用しています。最近、はじめたばかりで教えていただきたいと思い、質問させていただきます。 現在、作成したいシステムの仕様を説明します。 まず、abc.txtというファイルには、 20050225,001,パソコン,102000 20050225,002,モニター,4000 20050225,003,マウス,2100 … (日付、ID、品物、単価) いうデータが保存されております。 このtxtファイルを二次元的に読み込ませ、表示するのですは、一行ずつ表示したいのです。表示するページには、"次へ"ボタンを作成し、ボタンを押すと次行への表示を行う。 以上ですが、スライドショー感覚で表示を行いたいのですが、どのようにすればよろしいのでしょうか。 私が考えるには、txtファイルのIDまたは、txtファイルの行数をgetやpostで引き渡して…と考えますが、PHP初心者もあり、どのようなロジックで次行に移るのかわかりません。よろしければ、その方法(命令)もご伝授の程、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • エクセルにてテキストファイル読み込みでエラー  

    いつもお世話になっております。 テキストファイル (test.txt)をエクセルマクロにてセルへの読み込みを したいのですが、なぜか エラーになります。 Cells(n, 1) = buf  でエラーのようです。 理由がわかりません。 教えてもらえないでしょうか 普通の文章なら読み込みできるのですが =  を使っているとエラーがでるようです。 test.txtの画像を添付します。 エクセルのマクロの内容は次の通り Sub テキストファイルをセルに転記() Dim buf As String, n As Long Open "C:\Users\a\Desktop\test.txt" For Input As #1 Do Until EOF(1) Line Input #1, buf n = n + 1 Cells(n, 1) = buf Loop Close #1 End Sub