|
原因が判らず困っています。ご存知の方教えてください。
データシートから所定の書式にデータを転記する際、見出し行の該当セルを選択することで転記する項目名称・列位置を配列化させています。
※元になるデータシートの種類によって項目名称・数・列位置等が異なる為、コード内に直接記述をしていません。
On Error Resume Next
Do
・・・
T = "[セルの選択]"
M = "転記する項目名を選択して下さい。"
Set Rng = Nothing
On Error Resume Next
Set Rng = Application.InputBox(M, T, , , , , , 8)
※
On Error GoTo 0
If Rng Is Nothing Then Exit Do・・・1.
・・・
cnt = cnt+1
Redim Preserve Strs(1 to cnt) as String
Redim Preserve Clms(1 to cnt) as Long
Strs(cnt) = Rng.Value
Clms(cnt) = Rng.Column
・・・
Set Rng = Nothing
Loop
表示されたInputboxに選択したセルの絶対参照が表示されているのに、1.にひっかかります。
※の部分に下記を挿入したら、
If Err.Number <> 0 Then MsgBox Err.Number & ":" & Err.Description
「424:オブジェクトが必要です」と表示されました。
同様の手段をとっている部分は他にもあり、うまくSet出来たり出来なかった
りします。色々試した結果、
・Inputboxでセルを選択する際、画面をスクロールさせると失敗する。
逆に云うと、
Set Rng = Application.InputBox(M, T, , , , , , 8)
のコードで
・Inputboxが表示された時、画面上に見えてるセルを選択すると取得できる。
・・画面のスクロールがどういう影響を与えてるのか見当もつきません。
原因及び対策に関して教えてください。m(__)m。
|
|