多くのチェックボックスを含むワークシートがあります。Excelはこれらに自動的にCheckBox1、CheckBox2などの名前を付けます。ただし、私のドキュメントでは、すべての名前をRij11_1、Rij11_2などに変更する必要があります(Rij11は行11、_1はその行の最初のチェックボックスなど) 。各行の名前変更は_1から開始することが重要です。
StackoverflowのメンバーであるOsknowsとDaveDuPlantisは、このコードですでにこれについて私を助けてくれました(あなたのすべての助けに感謝します):
Sub test()
Dim obj As OLEObject, ChkBoxRow as long
ChkBoxRow = 11
With Worksteets("Storia")
For Each obj In .OLEObjects
If TypeName(obj.Object) = "CheckBox" Then
if obj.TopLeftCell.Row = ChkBoxRow then
obj.Name = "Rij11_" & Right(obj.Name, 1)
end if
End If
Next obj
End With
End Sub
ただし、各行の最初の名前が変更されたチェックボックスは1から始まりません(通常は7で、何らかの理由で私を逃れます)。また、行に10を超えるチェックボックスがある場合、番号は10を超えません。 、_10ではなく_0を取得し、_0の後、再び_1を続行すると、行に名前が重複します。
この番号の付け直しの問題について私を助けてくれる人はいますか?
どうもありがとう!
よろしく、マーク