- ベストアンサー
excel2000のVBAについてわからないことがあります
勉強している教科書に以下のようなものが載っていました。 ------------------------ Sub 練習2() Dim syurui As Integer Select Case Range("B15").Value Case "集合縦棒" syurui = xlColumnClustered Case "横棒" syurui = xlBarClustered Case "折れ線" syurui = xlLine Case "面" syurui = xlArea Case Else MsgBox "正しいグラフ名を入力してください" Exit Sub End Select Charts.Add ActiveChart.ChartType = syurui (先はまだ続きます) ------------------------------------- で、質問ですが、変数の型についてです。 上記のマクロは、グラフの種類をいろいろ変更できるマクロなのですが、なぜ、文字を代入するのに、変数宣言が、Integer なのかということです。 integerだと、整数型ですから、数値を入れるはずなのに、グラフの種類は文字です。 意味を履き違えた質問をしているのかもしれませんが、教えていただければ幸いです。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
グラフの種類は数値です。 xlBarClusteredなどは、一見文字列ですが、内部定数なので実際の値は数値です。
その他の回答 (1)
- neKo_deux
- ベストアンサー率44% (5541/12319)
MsgBox "値=" & xlColumnClustered などとすると、xlColumnClusteredの定数の値が表示されます。 「値=51」 -- Case "集合縦棒" syurui = 51 なんてしても同じ動作になるんですが、「51って何よ?」と、人間にはわかりにくいので、Excelではこのような定数を重複しないように決めて利用しています。
お礼
最初にintegerなので、「数値でも大丈夫なのかな?」とおもい、1とか入れてみると、エラーが出てしまい・・・51だったんですね。 とてもわかりやすい説明で感謝します。 ありがとうございました。
お礼
内部定数というのですね。(テキストにはちっともそんなこと書いてないんです・・・) 勉強になりました。ありがとうございます。