- ベストアンサー
変数の宣言について。(マクロ、VBなど)
こんにちは。 マクロの本を買って今勉強しているのですが、「変数の宣言」がどーしたらよいかわかりません。何のことか説明を読んだだけではまったくさっぱりわかりません。とっても重要なような気がするのですが、その点についてあまり詳しく載っていないのです。今は本のとおり書いているだけです。 f1押しても 戻すとか 取得するとか難しくて(馬鹿でごめんなさい。)なんのことやらわかりません。家族は「気にしなくていい(怒)」といいますが、そういう問題でもなさそうなのでぜひ解り易く教えて下さい。 ちなみにIntegerというのとLongというのはどう使い方が変わるのですか? 質問が漠然としててごめんなさい。(;;
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
hyper-teikaさんが言われているように Integer:整数型(-32,768 ~ 32,767の整数) Longは長整数型で (-2,147,483,648 ~ 2,147,483,647の整数)です ちなみにIntegerは2Byte、Longは4バイトです。 小数点を含む場合は SingleやDoubleですね Single:単精度浮動小数点数型 Double:倍精度浮動小数点数型 他にも Currency:通貨型 Date:日付型 Boolean:ブール型(真or偽) Variant:バリアント型 ・・・etcがあります。 文字列はおそらくString型でOKですけど 数字に関しては 桁数、小数点を含むかによって若干調整が必要に なってきます。 どのような数値が格納されるか等を解析して 設計してください。 やっぱり慣れ(経験)は重要だと思いますよ。 失敗すれば覚えるんで、失敗を恐れずに頑張ってください
その他の回答 (3)
- koyuri
- ベストアンサー率11% (5/43)
VBでのデータ型の宣言について補足します Dim 変数名 As データ型 を指定すると、その変数を1個使用するごとに メモリを使います 整数はIntegerでは-32768~32767で、それを越える数値が変数内に格納されると 桁あふれ[オーバーフロー]のエラーが出ます。 それ以上の数値を使用するかの星がある場合ははLong型で宣言します SingleとDoubleも同様で、duckさんのご指摘の通りです Variant型は、消費メモリが16バイトと大きいですが、あらゆるデータが格納できます。 この型で宣言しておいてとから型変換する方法もあります(あまりお勧めできませんが) Boolean型はTrueまたはFalseのいずれかの値を変数に格納するためのもので、IF~ などの条件判断をするときに使用するものです
お礼
koyuriさん ありがとうございました。 おっしゃるとおり「オーバーフロー」という字をよく見掛けます(^^; あせらず少しずつ覚えていきます。詳しく書いて下さって助かります。
- duck
- ベストアンサー率27% (5/18)
さっきのに補足です。 私が数値をあつかう場合 はじめの頃は、 小数点を含まない 桁数が多い整数はLong、 桁数の少ない整数はInteger 小数点を含む 桁数が多い数はDouble、 桁数の少ない数はSingle で設計してました。 一概には言えないですが参考にしてください。
お礼
duckさん ありがとうございました。 解り易い上、補足までして下さって、本当にうれしいです。 頑張ってプログラム出来るようになりたいです。
Integer:整数型、-32,768~32,767の整数 Long:長整数型、上記以上の桁数で、小数点を含む数値 習うより慣れよ! です。動かない、上手くいかない、おかしいな? と云ったことの繰り返しで覚えていきます。 個人的には、大村あつしさんの本がお勧めです。また、色色な情報を得たり、そのメールマガジンの申し込みなど、下記へどうぞ。 追伸:このネタもかの著者の『Excel2000 VBA 基礎編』からです\^o^/。
- 参考URL:
- http://www.moug.net/
お礼
hyper-teikaさん ありがとうございました。さっそく参考URLに行って来ます。たくさんやって楽しく頑張ります。
お礼
duckさん ありがとうございました。 調べつつ色々挑戦してみます。どうしてもわからなくなったら、また質問するかもしれませんが、その時はよろしくお願いします。