• 締切済み

マクロで指定ファイルを開く方法

ずぶの素人です。 例えばエクセルシートのA1に「こんにちわ」と 入力するとハードディスクの指定のフォルダ内から 「こんにちわ」と言うファイルを開く事はできるのでしょうか? 変数?というものを使ってみたものの ファイル名 = Range("A1") Workbooks.OpenText Filename:=C:\ファイル名.txt" としてみたところで ファイル名というファイルを探しにいってしまい 一向に進みません。 なんせ素人なんものでテキストを見ても 意味がわかりません。 どうかよろしくお願いします。

みんなの回答

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

ファイル名 = Range("A1") Workbooks.OpenText Filename:="C:\" & ファイル名 & ".txt" としてみてください。

grudhi
質問者

お礼

早速ありがとうございます。 出来ました! マクロが最後まで通ると気持ちいいんですね。 勉強します!

関連するQ&A

  • エクセルマクロ フォルダ内のファイル検索で

    よろしくおねがいします。 下記で、どうも指定フォルダ内のファイル名を検索できていないようで 条件の"ないなら"に反応して中断するハズがファイルを開いてしまいます。 思ったのですが、bufの設定にファイル名は指定できないのでしょうか? Sub Start8() Dim buf As String, IptA As String Const Path As String = "C:\001\" IptA = Workbooks("AAA.xls").Sheets("Sheet1").Cells(1, 1).Value buf = Dir(Path & "" & IptA & ".txt") If buf = "" Then Range("A2").Select ActiveCell.FormulaR1C1 = "" & IptA & "は見つかりません" Exit Sub Else Range("A2").Select ActiveCell.FormulaR1C1 = "" & IptFN & "が見つかりました" End If Workbooks.OpenText Filename:= _ "C:\001\" & IptA & ".txt" End Sub

  • テキストファイルのインポートが出来ません。

    デスクトップの同じフォルダ内に a.txt を作成してファイルのインポートを行おうとしましたができません。なぜでしょうか? Sub TextFileOpen() Workbooks.OpenText Filename:="a.txt", _ DataType:=xlDelimited, _ comma:=True End Sub

  • エクセル マクロ セルからファイルを読み込む?

    いつもお世話になっています 早速ですが、フォルダー内のCSVファイルをシート2に書き出しているのですが その後、その部分(sheets2のa1から順に)を参照してファイルを開こうとするために Workbooks.Open(Filename:=myFile)を使用した場合カンマ区切りでは開かず羅列となるためWorkbooks.OpenTextをつかおうとしたのですが怒られてしまいます。 順次ファイルを読み込んで処理を自動で行い保存をして次のファイルと自動でフォルダー内を処理したいのですが その部分でつまってしまっています どうかよろしくお願いします。

  • ファイルの出力先がうまく指定できません。。

    今、ファイルの出力先を変更させたいと思っていて、 調べたところ、fp=fopen("フォルダ名/test.txt","wb") のようにすればよい、というところまでは調べたのですが、 私の場合、ファイル名を、filenameというchar型の変数に入れており、 fp=fopen(filename,"wb")となってます。 これを、fp=fopen("フォルダ名/filename","wb")としてみたのですが、 これではダメでした。 ファイル名の入っている変数はそのまま使いたいのですが、 それでパス指定をする方法ありますでしょうか?

  • ExcelのOpenTextで作ったシートのコピー

    Excel2010のVBAでテキストファイルを読み込むと新しいブックに読み込まれるので、新しいブックのシートをVBAのコードがあるブックにコピーしたいのですが CSVファイル読み込み時に使う Workbooks.Open の場合には  Dim wb As Workbook  Set wb = Workbooks.Open(Filename:="C:\test\test1.csv")  wb.Worksheets(1).Cells.Copy ThisWorkbook.Worksheets("Sheet1").Range("A1")  wb.Close False のような感じでコピーすることができたのですが テキストファイル読み込み時に使う Workbooks.OpenText の場合には  Dim wb As Workbook  Set wb = Workbooks.OpenText Filename:= _    "C:\test\test1.txt", _    Origin:=932, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False _    , Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 2), _    Array(2, 2), Array(3, 2), Array(4, 2), Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 2), _    Array(9, 2)), TrailingMinusNumbers:=True  wb.Worksheets(1).Cells.Copy ThisWorkbook.Worksheets("Sheet1").Range("A1")  wb.Close False とすると、OpenTextの箇所で「Workbooks.OpenText Functionまたは変数が必要です」というコンパイルエラーが発生します。Set wb = Workbooks.OpenText (Filename:=・・・・True)のように括弧でくくっても同様のエラーがでてしまいます。 Microsoft Office 14.0 Object Libratyの参照設定はチェックされています。 Workbooks.OpenText Filename:= _・・・=Trueの部分はマクロの記録の機能で生成したコードです。 このような場合、どのように記述すればよいのでしょうか。 よろしくお願いします。

  • 指定のファイルを開くマクロ

    こんにちは。 いろいろやってみましたが、うまくいかなかったのでアドバイスいただけませんか。 マクロで指定のファイルを開く場合、 ChDir "C:\File" Workbooks.Open Filename:="リスト.csv" のように指定しています。 A1にC:\File A2にリスト.csv このように記述して ChDir "A1" Workbooks.Open Filename:="A2" のように開くようにはできませんか。 それと、似たようなことですが Windows("リスト.csv").Activate と指定するところを Windows("A2").Activate のように指定したい場合はどうでしょうか。 次に、A1にディレクトリ A2にファイルネームを指定するためにダイアログを出したいのですが、 そのような便利なマクロはあるのでしょうか。 よろしくお願いします。

  • エクセル VBA

    エクセルで指定したフォルダから シート1のA1セルに記入された名前のテキストファイルを 開くマクロを作りました 変数filepassがセルA1に記入されたファイルのパスのとして Workbooks.OpenText filename:=filepass, StartRow:=1 _ , DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _ , Space:=False, Other:=False, FieldInfo:=Array(1, 1) しかし このままだと指定したフォルダ(filepass)にファイルがなかったとき エラーになります もしファイルがなかったときに 何かメッセージを表示させたいのですが どのようにすればよいのでしょうか どなたか 教えてください VBAは素人です よろしくお願いします

  • ExcelVBAでカレントディレクトリのファイルを開く方法は?

    ExcelVBAでファイルを開くとき、 Workbooks.OpenText Filename:="D:\DataDir\TestFile.txt" とフルパスを指定すれはファイルを開けますが、パス指定なしでカレントディレクトリ(VBAを起動したExcelファイルがあるディレクトリ)のファイルを開くためにはどうしたらいいんでしょうか? 教えてください。ちなみにExcel2000を使っています。

  • エクセルマクロでファイルオープンでシートカットが使えない

    エクセルマクロでファイルオープンでシートカットが使えない エクセルのVBAマクロについて教えて下さい。 ”Application.GetSaveAsFilename”にてファイルを指定して、”Workbooks.OpenText Filename”にてファイルをオープンするときに、”Application.GetSaveAsFilename”にて指定したファイルがシートカットの時にエラーで停止する。 もし、”Application.GetSaveAsFilename”が実際のファイルの場合には、エラーで停止しない。 ■実際のVBA aFile = Application.GetSaveAsFilename(InitialFileName:=TaskF & "\" & "*.xls", FileFilter:="Excel(xls)ファイル (*.xls),*.xls") Workbooks.OpenText Filename:=aFile  ←左記の箇所でエラー停止する。

  • MATLABのsaveでファイル名を試行ごとに変えたい

    MATLABを使ってるんですが,変数を保存するとき, saveコマンドで, save 'filename.txt' A -ASCII -TABS で,Aのデータがfilename.txtに保存されますよね. で,このfilenameの名前を試行ごとに変えたいのですが,やりかたが分からないので教えてほしいです. 想像だと, save 'filename%d.txt' ~ みたいな感じで毎回違う数字をファイル名に入力できるかと考えたんですが,書き方がわかりませんでした. もしくは,ファイルを出力するフォルダを指定する方法などもわかるとうれしいです. お願いします.

専門家に質問してみよう