行に空でないセルがある場合に特定のタスクを実行するプログラムがあります。下のコード私は各空でないセルを確認するために使用していますが、最後の空でないセルに遭遇した後に問題が発生します。最後の値はA1048576と私のExcelがハングアップします。は、値が行の最後に到達したときにマクロを終了する必要があります
行
Reg_SCN_001
Reg_SCN_002
Reg_SCN_003
If VBA.IsEmpty(startCell.Value) Then
'MsgBox "No data in this column"
Else
Set firstNonEmptyCell = startCell.End(xlDown)
'MsgBox "First non empty cell is " & firstNonEmptyCell.Address
county = firstNonEmptyCell.Offset(0, 0).Address(False, False)
county = Right(county, Len(county) - 1)
countsteps1 = county - 1
End If
上記のコード私は私のプログラムで使用する各非空のセルのセルアドレスを与えます。例Reg001 @ $ A $ 2、Reg001 @ $ A $ 16、Reg002 @ $ A $ 33などです。 最後の空でないセルに達した後に何が起こるのですか?Reg015 @ $ A $ 233 上記のコードの実行時間が長くなり、行のセルの値が$ A $ 1048576になり、最後の空でないセルであるReg015 @ $ A $ 233で停止します。
これが役に立ちます。
あなたはこれをトラブルシューティングするのに十分なコードを提供していませんでした。誤ってコーディングされたループなど、サブ/ファンクション内の何かに問題がある可能性があります。 @ Zerkが述べたように – Zerk
、あなたの質問は不明です。しかし、一般的に言えば、あなたが言ったように "マクロを終了"したいなら、あなたは 'Exit Sub'を使うことができます。 –
もう少し説明しましょう。 –