图片周围的VBA Excel边框
早上好 我昨天的问题是: 我想为我的Excel文档中的大多数图像制作自动边框。 我开始录制宏,如下所示:图片周围的VBA Excel边框,excel,vba,Excel,Vba,早上好 我昨天的问题是: 我想为我的Excel文档中的大多数图像制作自动边框。 我开始录制宏,如下所示: Sub Picbodred() ' ' Picbodred Macro ' ' ActiveSheet.Shapes.Range(Array("Picture 2")).Select With Selection.ShapeRange.Line .Visible = msoTrue .ForeColor.RGB = RGB
Sub Picbodred()
'
' Picbodred Macro
'
'
ActiveSheet.Shapes.Range(Array("Picture 2")).Select
With Selection.ShapeRange.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(0, 0, 0)
.Transparency = 0
End With
End Sub
但是它只覆盖了一张图片,而且因为它已经分配了一个ID,这个ID将不一样。
除此之外,我想保留一些无边框图像,如下所示:
我该怎么做呢?事实上,让我写下这个作为回答,嗨 如何命名所有需要边框的图片,例如:SomeName\u Border,然后运行此宏:
Sub test()
For i = 1 To ThisWorkbook.Sheets("sheetname").Shapes.Count
If ThisWorkbook.Sheets("sheetname").Shapes(i).Name Like "*Border" Then
With ThisWorkbook.Sheets("Sheetname").Shapes(i).Line
.Visible = msoTrue
.ForeColor.RGB = RGB(0, 0, 0)
.Transparency = 0
End With
End If
Next
End Sub
只需将宏录制器中的.somethingsomething更改为使用它录制的任何内容。如果您以后可能需要更粗的线条或其他东西,我的意思是。将I=1的所有图片
循环到此工作簿.sheets(“sheetname”).Shapes.count
,然后为不需要边框的图片设置一些条件?我的意思是,弄清楚哪些图像不需要指定边界是一件非常具体的事情,所以我想你在这里必须要有创意。我可以看到一些选项,比如图片的特定名称。i、 e.如果此工作簿.sheetname.Shapes(i).名称类似于“*border”,那么
或类似的名称。是否可以一次为所有图片添加_border后缀?在电话上,但是:您的意思是重命名所有图片?当然,只需在它们之间循环并添加一行,如:ThisWorkbook.sheetname(“sheetname”).Shapes(i).Name=ThisWorkbook.sheetname(“sheetname”).Shapes(i).Name&“U Border”
如何在指定范围内完成,如上图所示?我想有一个在左边的大矩形边框的图像。我试着把这样的东西放在这个工作簿中:For I=1.Sheets(“Civils 1”).Range(“B2:L46”).Shapes.Count,现在我得到了:Object不支持这个方法这样做似乎不必要的复杂,只需手动重命名它们。如果出于某种原因,您需要对某个范围内的形状执行某些操作:我只是在谷歌上搜索了一下:“excel vba选择某个范围内的形状”,第一个结果就是您想要的。很抱歉,从您的.range.shapes.count
代码片段来看,您需要的信息似乎比我在一个简单的评论中给出的要多。