[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『データパスを変更するには・・・・』(初心者)
マクロの記録で作成したマクロです。テキストファイルを読み込みました。 このEXCELブックと、samp.txt は同じフォルダに入っています。 違うフォルダでも使用したいので、パスを付けないで読込出来ますでしょうか? 「samp.txt」は固定の名前です。
どの様にすれば良いのか御指導宜しくお願いします。
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\dat\samp.txt" _ , Destination:=Range("$A$1")) .Name = "samp" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True
(WinXP Excel2007)
>違うフォルダでも使用したいので、パスを付けないで読込 パス(フォルダ階層)は住所や郵便番号みたいなものですからねぇ! どこにあるのかわからないファイルにアクセスするって言うのは 無理があるのでは? それとも、「ファイルを開く」のダイアログボックスのような 感じで任意のフォルダを指定したい、ということでしょうか。 (みやほりん)(-_∂)b
みやほりん さん お返事有難う御座います。
違うフォルダといっても、 EXCELファイルと、テキストデータは必ず同じフォルダに入っているのですが. 例えば・・ c:\datにexcelとテキストが入っている。 このdatフォルダを別の所にコピーして使用する。 こんな感じなのですが無理でしょうか?
(初心者)
Thisworkbook.Path & "\samp.txt" で取得できると思います。
(Miki)
「二つのファイルをセットで」違うフォルダでも使用したいということでしたか。 失礼しました。 (みやほりん)
みやほりんさん 説明が悪くてすいませんでした。 Mikiさん 有難う御座います。
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\dat\samp.txt" _ , Destination:=Range("$A$1"))
の何処をThisworkbook.Path & "\samp.txt"に変えれば良いのでしょうか? 初心者で申し訳ありません。
ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\dat\samp.txt" , Destination:=Range("$A$1")) 「アクティブシートにクエリテーブルを追加する」っていうメソッド(コマンド)です。 「Connection:=」 とか、「Destination:=」はAddメソッドの引数(パラメータ)です。 このうち、「Connection:=」はマクロの記録で「"TEXT;C:\dat\samp.txt"」という文字列 が記録されています。""で囲まれたものが一組の文字列です。 これに似たような文字列をカスタマイズして作成すればよい、ということになります。 文字列同士は&演算子で結合します。 「"TEXT;C:\dat\samp.txt"」は「"TEXT;"&"C:\dat\samp.txt"」とも書けます。 このうち、"C:\dat\samp.txt"がファイルパスを示す文字列です。 Thisworkbook.Path はこの構文が書かれているブックのパスを返します。 "C:\dat\samp.txt"と同じフォルダにある場合は"C:\dat"という文字列が返ります。 と、ここまで書けば、応用できますよね。 (みやほりん)(-_∂)b
みやほりんさん 詳細な説明有難う御座いました。 下記の様にしたらうまく出来ました。 これで良いのでしょうか? お付き合いいただき有難う御座いました。
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & ThisWorkbook.Path & "\surf.txt" _ , Destination:=Range("$A$1"))
(初心者)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.