エクセルVBA2003について質問です。
Sub aaa1()
Dim a As Variant
Debug.Print TypeName(a)
End Sub
を実行してイミディエイトウインドウで確認すると
Emptyが返ってきます。
Variantが返ってこない理由は何でしょうか?
また、変数の方の宣言をしない場合は
Variant型になるはずなのに
Sub aaa2()
Dim a
Debug.Print TypeName(a)
End Sub
を実行すると、同じくEmptyが返ってきます。
Variantが返らない理由を教えてください。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
Empty 値は、初期化されていない (初期値が代入されていない) バリアント型の変数を示します
バリアント型は、代入された値に合わせて型が設定されます。
代入される値の型があらかじめ解らないような場合に使用され、値が入った時点で型が設定される
ようになっている。
逆を言えば、バリアント型の値が無いとも言えます。
従って、TypeName の戻り値がバリアント型になる事は無いはずです。
Dim a As Variant
a = 123
Debug.Print TypeName(a)
a = "abc"
Debug.Print TypeName(a)
Set a = Nothing
Debug.Print TypeName(a)
a = 1.11111111111111E+27
a = CVar(a)
Debug.Print TypeName(a)
昔は、バリアント型の変数は、メモリの消費が多く処理速度が遅いので使うなと言われていたのですが。
>Empty 値は、初期化されていない (初期値が代入されていない) バリアント型の変数を示します
よく覚えます。ありがとうございました。
No.3
- 回答日時:
まだ(2012/02/13 12:00)質問受付中になっておりますが、先の回答では疑問が解決
されていないのでしょうか?
でしたら、どの部分かを再質問願います。
(回答した以上 未解決で保留されておられますと回答がまずかったかなと気になります。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Excel(エクセル) excelvbaのwithについて 4 2022/12/19 16:51
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
このQ&Aを見た人はこんなQ&Aも見ています
-
【お題】NEW演歌
【大喜利】 若い人に向けたことは分かるけど、それはちょっと寄せ過ぎて変になってないか?と思った演歌の歌詞
-
これ何て呼びますか
あなたのお住いの地域で、これ、何て呼びますか?
-
「覚え間違い」を教えてください!
私はかなり長いこと「大団円」ということばを、たくさんの団員が祝ってくれるイメージで「大円団」だと間違えて覚えていました。
-
2024年のうちにやっておきたいこと、ここで宣言しませんか?
2024年も残すところ50日を切りましたね。 ことしはどんな1年でしたか? 2024年のうちにやっておきたいこと、 よかったらここで宣言していってください!
-
タイムマシーンがあったら、過去と未来どちらに行く?
20XX年、ついにタイムマシーンが開発されました。 あなたは過去に行く? それとも未来? タイムマシーンにのって、どこに行って、何をしたいか教えてください!
-
VBA たまに変数がempty値になるエラー
Excel(エクセル)
-
VBAでEmpty値って何ですか?
Excel(エクセル)
-
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
-
4
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
5
配列でデータが入っている要素を求める方法
Visual Basic(VBA)
-
6
UserForm1.Showでエラーになります。
工学
-
7
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
8
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
DATE型変数を初期化する方法
Visual Basic(VBA)
-
11
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
12
エクセルでエラーが出て困っています。
Excel(エクセル)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
15
Excelのセルの色指定をVBAから配列を用いて効率的に行う方法はあり
Visual Basic(VBA)
-
16
エクセルマクロで、別のブックが開いているかを判定したいのですが。
その他(Microsoft Office)
-
17
エクセルVBA 変数への代入がうまくできない
Visual Basic(VBA)
-
18
配列の参照渡しで型が一致しません。
Visual Basic(VBA)
-
19
クリックイベントなのに、2回クリックしないとフォー
Access(アクセス)
-
20
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jsp~jspにhiddenを使って変数...
-
VBAでダブルコーテーション入り...
-
エラーの意味は? Lvalue req...
-
EXCEL/VBA 変数の値をクリップ...
-
processing エラーで、 "cannot...
-
Variant型で宣言してるのにEmpt...
-
コンボボックス等における表示...
-
VB6.0での条件文にある#の意味
-
C言語 列挙型(enum型)変数について
-
JavaScriptをURLから直接実行し...
-
i++と++i ってどう違うのですか?
-
ここの答えわかる方いますか? ...
-
[VBS]変数を定数に変換する方法...
-
【VBA】複合代入演算子
-
URLが開いた後に処理したい
-
DataTableの値を変数に代入したい
-
Pythonで辞書内のValueをfor k,...
-
C言語 exitの使い方
-
フォームを開くときに、コンボ...
-
VB6.0-整数と余りを求める
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エラーの意味は? Lvalue req...
-
VBAでダブルコーテーション入り...
-
テキストボックスの値を変数に...
-
processing エラーで、 "cannot...
-
Variant型で宣言してるのにEmpt...
-
EXCEL/VBA 変数の値をクリップ...
-
[VBS]変数を定数に変換する方法...
-
C言語 アロー演算子について質...
-
jsp~jspにhiddenを使って変数...
-
整数xxxが大き過ぎますというエ...
-
プログラミングで変数と関数の...
-
変数にオフセットが付いている...
-
ExcelのVBAでをA列に第0〜19項...
-
「%」を使って、偶数か奇数かを...
-
【VBA】複合代入演算子
-
無名関数のメリットがよくわか...
-
gridViewの行選択解除
-
VBA 1行で複数の代入を行った...
-
コマンドプロンプト バッチ|結...
-
stdpicture型の変数に、、
おすすめ情報