我有一个很大的日历电子表格,当前仅使用条件格式突出显示今天的日期。但是,我不喜欢可能使用的任何格式,因此,我希望能够有一些东西可以在单元格的顶部绘制一个带有今天日期的圆圈。
每天的布局方式是(例如)A1本身是“ dd”格式的日期,然后A2包含信息。该信息从事件数据列表中提取,因此具有公式
我已经看到一些可以通过VBA代码实现的东西,但是我不确定如何编写。
谢谢 山姆
答案 0 :(得分:3)
这将在今天的日期绘制一个椭圆形的圆形。如果找不到今天的日期,则会显示错误消息:
Sub DrawOval()
Dim cell As Range, circ As Shape
Set cell = Sheet1.Cells.Find(Date, Sheet1.Range("A1"))
If Not cell Is Nothing Then
Set circ = Sheet1.Shapes.AddShape(msoShapeOval, 187.8, 37.2, 63.6, 24)
With circ
.Select
Selection.ShapeRange.Fill.Visible = msoFalse
.Top = cell.Top
.Left = cell.Left
End With
Else
MsgBox "Cell with today's date not found!", vbCritical + vbOKOnly, "Error"
End If
End Sub
这假设您的工作表名称为Sheet1
,因此请相应地进行修改。您可以通过在工作表中添加形状并将其分配给该宏来运行它。