Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6594 / 76734 ←次へ | 前へ→

【75740】Re:Valueと変数の使い方
回答  γ  - 14/6/25(水) 5:45 -

引用なし
パスワード
   >1.Valueプロパティは文字列だけではなく、数字は数字として処理してくれると考えていいですか?
そうです。
ヘルプを見ると、
>Range.Value プロパティ
>指定されたセル範囲の値を表すバリアント型 (Variant) の値を設定します。値の取得および設定が可能です
とあります。Variant型ですから、数値も文字列もOKです。
MsgBox TypeName(n)などとすると、Doubleと表示されます。(数値のデフォルトはDoubleです)

ただし、この場合、
>Cells(3, 21)と Cells(3, 23)には日付の日にち部分の数字
ということが解っているわけですから、
Dim n As Long
Dim m As Long
と型宣言しておくべきです。(下記補足(1)参照)

> 2.For A = n + 5 To m + 3 のように変数の中に変数を入れるのは問題はないですか?
問題ありません。
(なお、counterのstartとendの値は一度設定されるだけで、
  繰り返しの都度計算されるわけではありません。)

-----------------
なお、
(1)
変数は必ず宣言すべきです。
これがないと、変数のタイプミスがあっても、発見が遅れます。
宣言があれば、宣言せずに使った変数には警告が出ます。
また、特定の型にしておけば実行効率が上がると言われています。

Option Explicit
を一行目に挿入するようにして下さい。
そうすれば、今回のような未宣言の変数には警告が出ます。

また、
ツール − オプション − 編集 で
「変数の宣言を強制する」にチェックを入れておけば、
モジュールを作成した時点で、Option Explicitが自動的に挿入されるので、
手間が省けます。

(2)
繰り返しに使う変数は、Aといった変数名ではなく,i,j,k,l,m,nといったものを
使うのが普通です。これは多くの人が使う慣例のようなものです。
iは1,l と誤認しやすいので、一つだけの繰り返しなら、私は k を使うことが多いですね。

(3)
最後の繰り返しのところは、
Range(Cells(3, n + 5), Cells(3, m + 3)).Value = "→"
といった書き方もできますね。
7 hits

【75739】Valueと変数の使い方 芸人 14/6/25(水) 1:00 質問
【75740】Re:Valueと変数の使い方 γ 14/6/25(水) 5:45 回答
【75746】Re:Valueと変数の使い方 芸人 14/6/25(水) 23:12 お礼
【75752】Re:Valueと変数の使い方 γ 14/6/26(木) 21:22 発言
【75756】Re:Valueと変数の使い方 芸人 14/6/29(日) 16:48 お礼

6594 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free