vba如何打?qū)?/h1>
在VBA(Visual Basic for Applications)中,要在單元格中插入一個對勾(勾選的復(fù)選框),可以使用以下步驟:

1. 打開Excel,然后按下 `ALT + F11` 打開VBA編輯器。
2. 在VBA編輯器中,找到要操作的工作簿。
3. 雙擊工作簿,或者雙擊工作表,在打開的代碼窗口中添加以下代碼:
```vba
Sub DrawCheckMark()
Dim objShape As Shape
Dim objChart As ChartObject
Dim objCell As Range
Dim strCellAddress As String
' 設(shè)置要插入對勾的單元格地址
strCellAddress = "A1" ' 修改為你的單元格地址
' 檢查是否已經(jīng)存在圖表對象
On Error Resume Next
Set objChart = ActiveSheet.ChartObjects("CheckMark")
If Not objChart Is Nothing Then
' 如果存在,則刪除舊的圖表對象
objChart.Delete
End If
On Error GoTo 0
' 創(chuàng)建一個新的圖表對象
Set objChart = ActiveSheet.ChartObjects.Add(Left:=100, Width:=100, Top:=100, Height:=50)
objChart.Name = "CheckMark"
' 在圖表對象中添加一個形狀,用作對勾
Set objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements.Add(Left:=0, Width:=20, Top:=0, Height:=20, ShapeType:=xlShapeRectangle)
objShape.Name = "Rectangle"
Set objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements.Add(Left:=20, Width:=20, Top:=0, Height:=20, ShapeType:=xlShapeRectangle)
objShape.Name = "Rectangle2"
' 設(shè)置形狀的角度
objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements("Rectangle")
objShape.LockAspectRatio = msoFalse
objShape.Width = 20
objShape.Height = 20
objShape.Rotation = 45
objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements("Rectangle2")
objShape.LockAspectRatio = msoFalse
objShape.Width = 20
objShape.Height = 20
objShape.Rotation = 135
' 將圖表對象移動到指定單元格
Set objCell = ThisWorkbook.Sheets(1).Range(strCellAddress)
objChart.Left = objCell.Left
objChart.Top = objCell.Top
objChart.Width = objCell.Width
objChart.Height = objCell.Height
' 隱藏圖表的標題和圖例
objChart.Chart.ChartTitle.Text = ""
objChart.Chart.Legend.Delete
End Sub
```
4. 運行此宏,它將在指定的單元格中繪制一個對勾。
請注意,這段代碼將創(chuàng)建一個簡單的對勾形狀,它由兩個矩形組成。你可以根據(jù)需要調(diào)整形狀的位置、大小和角度。如果你想要一個更復(fù)雜的對勾,你可能需要添加更多的形狀和調(diào)整它們的位置。

在VBA(Visual Basic for Applications)中,要在單元格中插入一個對勾(勾選的復(fù)選框),可以使用以下步驟:
1. 打開Excel,然后按下 `ALT + F11` 打開VBA編輯器。
2. 在VBA編輯器中,找到要操作的工作簿。
3. 雙擊工作簿,或者雙擊工作表,在打開的代碼窗口中添加以下代碼:
```vba
Sub DrawCheckMark()
Dim objShape As Shape
Dim objChart As ChartObject
Dim objCell As Range
Dim strCellAddress As String
' 設(shè)置要插入對勾的單元格地址
strCellAddress = "A1" ' 修改為你的單元格地址
' 檢查是否已經(jīng)存在圖表對象
On Error Resume Next
Set objChart = ActiveSheet.ChartObjects("CheckMark")
If Not objChart Is Nothing Then
' 如果存在,則刪除舊的圖表對象
objChart.Delete
End If
On Error GoTo 0
' 創(chuàng)建一個新的圖表對象
Set objChart = ActiveSheet.ChartObjects.Add(Left:=100, Width:=100, Top:=100, Height:=50)
objChart.Name = "CheckMark"
' 在圖表對象中添加一個形狀,用作對勾
Set objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements.Add(Left:=0, Width:=20, Top:=0, Height:=20, ShapeType:=xlShapeRectangle)
objShape.Name = "Rectangle"
Set objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements.Add(Left:=20, Width:=20, Top:=0, Height:=20, ShapeType:=xlShapeRectangle)
objShape.Name = "Rectangle2"
' 設(shè)置形狀的角度
objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements("Rectangle")
objShape.LockAspectRatio = msoFalse
objShape.Width = 20
objShape.Height = 20
objShape.Rotation = 45
objShape = objChart.Chart.ChartObjects(1).Chart.ChartElements("Rectangle2")
objShape.LockAspectRatio = msoFalse
objShape.Width = 20
objShape.Height = 20
objShape.Rotation = 135
' 將圖表對象移動到指定單元格
Set objCell = ThisWorkbook.Sheets(1).Range(strCellAddress)
objChart.Left = objCell.Left
objChart.Top = objCell.Top
objChart.Width = objCell.Width
objChart.Height = objCell.Height
' 隱藏圖表的標題和圖例
objChart.Chart.ChartTitle.Text = ""
objChart.Chart.Legend.Delete
End Sub
```
4. 運行此宏,它將在指定的單元格中繪制一個對勾。
請注意,這段代碼將創(chuàng)建一個簡單的對勾形狀,它由兩個矩形組成。你可以根據(jù)需要調(diào)整形狀的位置、大小和角度。如果你想要一個更復(fù)雜的對勾,你可能需要添加更多的形狀和調(diào)整它們的位置。
本文鏈接:http://www.resource-tj.com/bian/403511.html