[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Offset関数の書き方について』(ま)
Offsetは、セルを指定できる関数ですが、以下の式に
i=3を入れた場合、どのような過程で移動する行、列の数が出せるのかわかりません。。
あと、\は割り算の商で、Modは、あまりの数字でよいでしょうか。
以下の式にi=3を代入した場合、どのような結果になるでしょうか。
Offset(((i - 1) \ 2) * 2, ((i - 1) Mod 2) * 2)
< 使用 Excel:Office365、使用 OS:Windows10 >
なので、実行結果くらいは、ご自分で計算して確認してください。 そういう行為をデバッグと呼び、作った人が責任持って自分でやる作業です。(電卓使わずとも、イミディエイトウィンドウで式の部分だけ表示実行すれば、すぐ判ります)
例えば、プロシジャを途中で止めて、イミディエイトウィンドウで以下を実行すると、どのアドレスになるのか判ります。
MsgBox Range("A1").Offset(((i - 1) \ 2) * 2, ((i - 1) Mod 2) * 2).Address
もっと判りやすくすると、以下とか。
Sub test() Dim i As Long
For i = 1 To 10 With Range("A1").Offset(((i - 1) \ 2) * 2, ((i - 1) Mod 2) * 2) .Value = i & ": " & .Address End With Next i End Sub (???) 2020/05/07(木) 17:25
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.