Tạo checkbox vào dòng trong VBA Excel

Hướng dẫn code vba tạo checkbox đưa vào cell trong VBA Excel

Tạo checkbox vào dòng trong VBA Excel

Tạo 1 button Button1 trong excel và tạo sự kiện code click

Sub Button1_Click()

   ' ActiveSheet.CheckBoxes.Delete  ' Nếu muốn xóa checkbox trước khi add vào
    For i = 1 To 10
  
    ActiveSheet.CheckBoxes.Add(Cells(i, 1).Left, Cells(i, 1).Top, Cells(i, 1).Width, Cells(i, 1).Height).Select
    With Selection
    .Caption = "Chon"
    End With
    
    ActiveSheet.CheckBoxes.OnAction = "LayDongThu"
    Next
    
End Sub

' Hàm lấy dòng thư khi tít vào checkbox VBA
Sub LayDongThu()
    Dim ShpName As String
    ShpName = Application.Caller
    Dim shp As Shape
    Set shp = ActiveSheet.Shapes(ShpName)
    Dim dong As Integer
    dong = shp.TopLeftCell.Row
    MsgBox dong
    
    
End Sub

///**************** get giá trị cột chỉ định của dòng có tít

Sub Get_GiaTriCot_DuaVaoCheckBox()
Dim cb As Shape
lr = 6
For Each cb In ActiveSheet.Shapes
If cb.Type = msoFormControl Then
    If cb.FormControlType = xlCheckBox Then
        If cb.ControlFormat.Value = xlOn Then
        
        rs = cb.TopLeftCell.Row
        
        Cells(rs, 2) = lr
        lr = lr + 1
        End If
    End If
 End If

 'For i = 2 To 10
        'If Cells(i, 2) = Cells(rs, 2) Then
        'lr = 7
        'Cells(i, 2) = lr
        'End If
        'Next
Next

 MsgBox HasCheckbox(Cells(1, "A"))
End Sub