シェイプの多いExcelワークシートを検討してください。 2つの形状を選択するには:パターンに一致するすべてのExcel描画レイヤシェイプを削除する
ActiveSheet.Shapes.Range(Array("Freeform 314", "Freeform 278")).Select
目標は「自由形式」で始まるすべての図形を削除することです。
MS VBScript正規表現5.5が見つかりましたが、シェイプは特定のセルには存在しません。数量または特定の数の形がほとんど分かりません。だから醜い解決策は、ストロークの名前を強制的にブルートにすることができますが、私はあなたがエレガントなソリューションを達成するために私を助けることを願っています。
次のコードは機能しませんが、問題の詳細を知ることができます。
Sub DeleteShapes()
Dim re As New RegExp
re.Pattern = "Freeform*"
Dim cell As Range
For Each cell In ActiveSheet.Shapes.Range(Array(re.Pattern)).Select
Selection.delete
Next cell
End Sub
ありがとう、このソリューションが大好きです –