|
▼とってぃ さん:
Jaka さん
ありがとうございました。
無事に動作しました。
>Jaka さん
>すみません。
>ちゃんと伝わっていませんでした。
>1.D11〜D41の間で空白ならそのB列に○(オートシェイプ)を作成する。
>2.作成列に文字がなかったら作成しない。
>例1:D15が空白でB15に文字がある →B15に○を作成する。
>例2:D18が空白でB18に文字がない →B18に○を作成しない。
>です。
>
>▼Jaka さん:
>>▼とってぃ さん:
>>>もう一つ追加したいのですどのようにコードを書けばよいのか教えてください。
>>>With .Cells(i, 4).Offset(, -2)でB列を指定してますが、
>>>そこに空白なら(B列)オートシェイプを作成しない。を追加したいのですが。。
>>提示されたコードを見る限り自分で解決できそうな感じですけど。
>>
>>Dim i As Long, Shap As Shape
>>Const 余白率 = 15 '余白の割合(%)
>> With Worksheets("Sheet1")
>> For i = 11 To 41
>> With .Cells(i, 4)
>> If .Value = "" Then
>> With .Offset(, -2)
>> '.Select
>> If .Value <> "" Then
>> Set Shap = ActiveSheet.Shapes.AddShape(msoShapeOval, _
>> .Left + .Width * 余白率 / 100, _
>> .Top + .Height * 余白率 / 100, _
>> .Width * (100 - (余白率 * 2)) / 100, _
>> .Height * (100 - (余白率 * 2)) / 100)
>> Shap.Fill.Visible = msoFalse
>> Set Shap = Nothing
>> End If
>> End With
>> End If
>> End With
>> Next
>> End With
|
|