• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WEBクエリについての質問)

WEBクエリでの数字の取り込みについて

このQ&Aのポイント
  • WEBクエリを使用してホームページからエクセルに数字を取り込む際、特定の数字の表示方法について質問です。
  • ホームページ内の4桁の数字を取り込むと、エクセルには正しく表示されますが、先頭が0の場合は0が無視されます。
  • エクセルに先頭の0を正しく表示する方法について教えていただきたいです。

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

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

#1です。 表示するところまではクエリ任せなので、自由にならないのですが、書式設定を文字列にしておいても、3桁で表示されてしまうようなので、クエリ内で数字と認識できるものは、一度数字に変換してしまっているみたいですね。 >千の桁・百の桁・十の桁・一の桁に分解したいため~~ その処理はどのように行っているのでしょうか? 関数か、マクロ(VBA)だと思いますが、クエリをいじくろうとするよりも、その処理で対応したほうが遥かに簡単だと思われます。 例えば、対象が数字だったとして、仮にB3セルにあるとします。 ◆関数の場合 (1)数字のまま扱って各桁を取り出す(結果は数字)   千の桁: =MOD(INT($B$3/1000),10)   百の桁: =MOD(INT($B$3/100),10) (2)文字列に変換してから各桁を取り出す(結果は文字)   千の桁: =MID(TEXT($B$3,"0000"),1,1)   百の桁: =MID(TEXT($B$3,"0000"),2,1) ◆VBAの場合(関数の場合とほぼ同様) (1) 省略 (2) Format(Range("B3"), "0000")が関数のTEXT(B3,"0000")と同等 といった、要領でいかがでしょうか? 対象を文字としても、もちろん同じようなことが可能です。(とりあえず省略)

km8000
質問者

お礼

ご回答ありがとうございます。 やはり、無理ですね。 一度置き換えたほうが手っ取り早いですね。 現在は、 ◆VBAの場合(関数の場合とほぼ同様) (1) 省略 (2) Format(Range("B3"), "0000")が関数のTEXT(B3,"0000")と同等 の方法にて行っていますが 以前からクエリから直接、文字列として取り込めないかという疑問がありましたので 質問いたしました。 いろいろ、お手数かけありがとうございました。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

抽せん数字が必ず4桁と考えてよいなら・・・ 抽選数字が入るセルの書式を 0000 (ユーザ定義で入力)に設定しておきます。 こうしておけば、データを取り込んだ時に、数字を前ゼロ(4桁)で表示してくれるはずです。

km8000
質問者

お礼

ご回答ありがとうございます。 ご指摘の件試してみましたが 4桁で表示はされるのですが、数値で扱われています。 私のご説明が悪かったのですが、 抽選すうじを取り込んだ後、 千の桁・百の桁・十の桁・一の桁に分解したいため 4桁の文字列として取り込みたいと思っています。

関連するQ&A