• ベストアンサー
  • 暇なときにでも

エクセルで外部データの取り込みの際の「名前の定義」について。

エクセルで外部データの取り込みの際の「名前の定義」について。 エクセルのテキストファイルウィザードでCSVファイル等の外部データを取り込むと、その範囲に「名前の定義」が自動的にできますが、この名前が"ExternalData_1"となる場合と、外部データのファイルになる場合があるようです。 この違いは何でしょうか? 数日前にエクセル2003でCSVファイルを取り込んだときは"ExternalData_1"でした。 昨日エクセル2000で別のCSVファイルでやってみても"ExternalData_1"だったと思います。 しかし、今日、数日前と同じ2003で、数日前と同じCSVファイルで取り込んだら、"CSV10000"というファイル名で名前が定義されてしまいました。 非常に不思議です。 原因を思い当たる方、いらっしゃいましたらご教示ください。 取り込み範囲の名前の定義を、取り込み後のVBAコードで使用するため、名前がつき方が不定だとまずいのです。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数2730
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • end-u
  • ベストアンサー率79% (496/625)

取り敢えず。 マクロでQueryTableのNameプロパティを指定せずに実行すると、 『ExternalData_#』という名前が自動付加されますね。 手作業では[外部データ範囲のプロパティ]ダイアログの 「名前」ボックスは未入力状態では受け付けてくれません。 何も弄らないと、デフォルトでセットされたファイル名、 あるいはクエリ名などが付けられる事になります。 >..今日、数日前と同じ2003で、数日前と同じCSVファイルで取り込んだら、 >"CSV10000"というファイル名で名前が定義されてしまいました。 今日もマクロから取り込んだのですか? >取り込み範囲の名前の定義を、取り込み後のVBAコードで使用するため、 >名前がつき方が不定だとまずいのです。 取り込み時に任意の名前をつければ良いかと思います。 自動記録で With ActiveSheet.QueryTables.Add(...)   .Name = "CSV10000" : などと記録されますよね。ここでNameを付ければ良いです。 あるいは、名前定義に頼らず、取り込み後はQueryTableの ResultRangeプロパティを使用しても良いかと思います。 With ActiveSheet.QueryTables   If .Count > 0 Then     MsgBox .Item(1).ResultRange.Address     '名前そのものが必要なら、QueryTableからの取得も可能です。     'MsgBox .Item(1).Name   End If End With

共感・感謝の気持ちを伝えよう!

質問者からのお礼

end-u さん、いつもありがとうございます。 > 今日もマクロから取り込んだのですか? 違いはこれでした!! 前回はすべてマクロで取り込んでいました。 そして今回は手作業・・・・。 ResultRangeプロパティも初めて知った呪文です。 今回も大変おせわになりました。 ありがとうございます。

関連するQ&A

  • 大量の外部データの取り込み(エクセル)

    大量のcsvデータを、 外部データの取り込み→データの取り込み→csv呼び出し →テキストファイルウィザード を使って取り込んでいます。 この同じ動作をマクロ登録するにはどうすればいいか。 または、もっと簡単な登録の仕方はないでしょうか? よろしくお願いいたします。

  • EXCELで外部取込の自動化

    教えて下さい。 カンマ、ダブルコーテーションで区切っていないデータを拡張子CSVでもらっています。それで、毎回、EXCELで外部取込からテキストファイルウィザードで決められた位置に区切り位置を指定しています。これが結構大変な作業で、自動にすることは出来ないものかと悩んでいます

  • テキストファイルウィザードを使用したCSVファイル読み込みの挙動について【Excel2003】

    テキストファイルウィザードを使用したCSVファイル読み込みの挙動について【Excel2003】 <CSVファイル例> "aaaa","bbb<改行コード 0d0A>bb","ccc" 上記のようなCSVファイルを、 ダブルクリックにてExcel起動すれば正常に表示されますが、 テキストファイルウィザード(データ→外部データ取り込み→データの取り込み) を使用して、読み込みを行うと改行されて表示されてしまいます。 これは、Excelの仕様なのでしょうか? ご存知の方いらっしゃいましたら教えていただけますでしょうか? 現在の本質的な問題は、 ------------------------------------------------------------------- Excel2003にて、文字コードがUTF-8のCSVファイルを下記方法にて読み込む ・テキストファイルウィザードを使用 ・文字コードをUTF-8 ・カンマ区切り設定 で読み込みを行うと文字化けしないで表示されるのですが ダブルコーテーション中のデータ内に改行コード0d0aが含まれると 改行されてしまいます。 ------------------------------------------------------------------- と言う現象の調査をしております。

    • 締切済み
    • PHP
  • Excelの外部データの取り込みについて

    Excelにの外部データ(CSV)を取り込んで活用したいと思っております。状況はお客様から提出されるフロッピーからCSVデータを取り込みたいのですがCSVはファイル名が部分的に一致していてバラバラです。でも毎回毎回「ツール→外部データの取り込み」でファイル名を選択するのは面倒ですのでそのファイル名の部分一致するところを利用して作業的に「データの更新」さえすれば更新できるような方法はないでしょうか?ご教示下さい。

  • エクセルでCSVファイルの取り込み

    エクセルでCSVファイルを取り込みます。 このCSVは毎日取り込んでいて、一回のファイルが大体50件くらいです。(1レコードあたり20項目あります) 今現在10000件くらいたまっています。 いつも外部データの取り込み(テキストファイル)で取り込むのですが、表の一番下にもって行き、取り込んだ後、 1、名前の管理で参照範囲の再設定 2、今取り込んだCSVの名前の削除 をしなくてはなりません。 もっと簡単に表に取り込めないでしょうか? 特に1は時々変な範囲になるので、厄介に思っています。 いい知恵がありましたら、教えてください。 よろしくお願いいたします。

  • EXCELのマクロで外部データの取り込み

    CSVファイルを「外部データの取り込み」でシートに読み込むマクロを自動記録で作成したのですが取り込むファイル名が毎回違うのでそのマクロを使うことができません。そこでファイルリストのダイアログからパスとファイル名を指定して実行できる様にしたいのです。良い方法が有りましたらご伝授をお願いします。 ちなみにCSVファイルはネットワークドライブ上にあります。

  • EXCEL VBA 外部データ取り込み時にダイアログボックスでファイル指定したい

    EXCEL VBAでCSVファイルを外部データ取込で取り込む場合、ダイアログボックスを開いてファイルを指定して取り込む方法ってありますか?

  • テキストファイルをエクセルで開く時、編集して開けませんか?

    すごく初歩的な質問で申し訳ないのですが・・・ お客さんからCSV形式(カンマ編集)のテキストファイルをもらったのですが、エクセルでファイルを開く時、すぐに開いてしまい困ってます。 例えば、カンマ編集していないテキストファイルだったら、開く時に、まず『テキストファイルウィザード』なるボックスが開いて、どこで区切るとか、どんな文字タイプだとかを指定してから開く事ができますよね? CSV形式のファイルでも、この『テキストファイルウィザード』から指定をしてから開く事はできないのでしょうか? 何故先に指定をしたいかと言うと、カンマで区切っている値を編集してから開きたいのです。 開いてから文字の指定しようと思っても、数字のみの値だと、前の0が消えてしまってて編集不可能になるんです。 例えば、6桁の数字のみのコードがセットされている場合、『000123』となっているものが、開くと『123』となり前の0が消えてしまうのです。 どなたか良い方法を教えて下さい! エクセルのバージョンは、Excel 2000 ウィンドウズ98の環境です。

  • テキスト ファイル ウィザートを表示させたい!

    EXCELでcsv形式のファイルを開くときに、テキストファイルウィザードを表示させたいのですが、どなたか方法わかりますか? tsv形式のファイルだとウィザードが立ち上がるんですが、csvだと立ち上がりません。 なぜウィザードが必要かというと、読み込みたいデータの中に何列か文字列で読み込みたいデータがあるからです。 EXCEL97です。 よろしくお願いします!!

  • Excelでcsvのフィールドが減る

    csvファイルをExcel2000のテキストファイルウィザードで開き、 再びcsvで保存した場合に、フィールド数(カンマの数)が減る という現象が起こりました。 再保存する際、空白セルが無視されるのかと考えましたが、 同ファイル内に、空白であってもフィールドが保存されている レコードもあります。 OSはWin2000 csvはテキストファイルウィザードで開けない為、 拡張子を一旦 txt に変えてから開いています。 原因、解決方法、何かヒントになりそうな事なら何でもよいので アドバイスよろしくお願いします。