変数で定義された特定の場所でプログラムのカウントを開始したいと考えています。たとえばrn = sh.Cells(9, 1)
を使用でき、変数rn
は現在cells(9,1)
の位置を保持しています。私は私のカウントコマンドで変数rn
を使用する場合でも、私は次のエラーを取得しています:VBA範囲を設定する変数を使用する範囲
Method 'Range' of object' _worksheet' failed
ここに私のコードは次のとおりです。
Option Explicit
Sub Struc_Equa()
Dim n As Integer
End sub
Sub countN(n)
Dim sh As Worksheet
Dim rn As Range
Dim SheNa As String
SheNa = ActiveSheet.Name
Set sh = ThisWorkbook.Sheets(SheNa)
Set rn = sh.Cells(9, 1)
' The command below does not work
'n = sh.Range(rn, sh.Range(rn).End(xlToRight)).Columns.Count
' I am able to do what I want but in a inefficient way (shown below)
'n = sh.Range("A9", sh.Range("A9").End(xlToRight)).Columns.Count
rn.Activate
MsgBox (n)
End Sub
はなぜこのエラーが起こっているのでしょうか?
これはまさに問題でした。元のコードに何が間違っていたかをさらに説明できますか? –
@MaxHollander私の更新を見てください。今はっきりしていることを願っています。 ;) – L42
あなたはC++に多くの経験を持っていますか?能力に関するいくつかの質問があります –