親愛的所有人:我需要添加複選框到A列,即我的數據透視表左側,從B列開始到D列。我還希望複選框鏈接到數據透視表的最右側,即E列。添加數據透視表旁邊的複選框,直到數據透視表中最後一行信息被添加爲止
我找到了一個代碼。但限於特定範圍(「A4:A9」)。我希望代碼能夠動態地添加複選框,而不管數據透視表的長度是多少,以便換句話說就是最後一行。
附上整個代碼,我已經
Sub AddCheckBox()
Dim cell As Range
DelCheckBox 'Do the delete macro
'or delete all checkboxes in the worksheet
' ActiveSheet.CheckBoxes.Delete
Dim MyRow As Long
lastrow = Cells.Find("*", Range("A1"), xlValues, , xlByRows, xlPrevious).Row
For Each cell In Range("A4:A9")
With ActiveSheet.CheckBoxes.Add(cell.Left, _
cell.Top, cell.Width, cell.Height)
.LinkedCell = cell.Offset(, 4).Address(External:=True)
.Interior.ColorIndex = 37 'or xlNone or xlAutomatic
.Caption = ""
'.Border.Weight = xlThin
End With
Next
With Range("A4:A9")
.Rows.RowHeight = 15
End With
End Sub
Sub DelCheckBox()
For Each cell In Range("A4:A9")
Worksheets("Analysis").CheckBoxes.Delete
Next
End Sub
我發現,標識中的最後一行代碼。但是,我必須做錯事,因爲當我嘗試將其與代碼的其餘部分一起插入時,它似乎不起作用。事實上,我不知道我需要插入它才能正常工作。任何人都可以幫助我確定我需要做什麼嗎?
非常感謝您的幫助。
非常感謝您的快速回復:)但是當我做了修改,並試圖運行它突出一個「編譯錯誤」爲LASTROW = Activesheet.Range代碼(「A」&.Rows.Count) .End(xlUp).Row表示無效或不合格參考。我認爲是「.Rows」。你知道如何解決這個問題嗎?非常感謝 – Gabriel
我的不好 - 複製和粘貼錯誤。 'lastrow = ActiveSheet.Range(「A」&ActiveSheet.Rows.Count).end(xlUp).Row' – Tom
別擔心,呵呵。我已經嘗試了你建議的代碼 – Gabriel