マクロで画像の透明度を調整する方法をお教え下さい。 | |
---|---|
[195792] マクロで画像の透明度を調整する方法をお教え下さい。- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ kazuo -(2023/06/28(08:18)) □U R L/ 以下のマクロ実行後、 図の透明度の標準スタイル(P)をクリックし、透明度調整をすると透明度が調整可能になりますが、 マクロの記録では記録されませんし、VBEではそれらしいプロパティも見つかりません。 塗りつぶし背景を追加すればその透明度値は調整できますが、 図の透明度の標準スタイル(P)をクリックし、透明度調整をしてからでないと透明度が変化しません。 ただし、透明度は図の透明度を調整したときと塗りつぶしの透明度を調整したときでは異なります。 h ttps://learn.microsoft.com/ja-jp/office/vba/api/excel.fillformat.transparency >Transparency プロパティの値は、単一な色の塗りつぶしと線にしか設定できません。 >パターンが設定された線、塗りつぶしのパターン、グラデーション、図、およびテクスチャを半透明にすることはできません。 ということなのでしょうが、別の プロパティをご存じないですか? シートモジュールコード Sub toumei() Const 画像 = "背景画像.bmp" Dim pic As Picture Dim ret As VbMsgBoxResult On Error Resume Next Me.Pictures("mask").Delete On Error GoTo 0 ret = MsgBox("背景を入れますか?", vbYesNo) With Range("e3") .Value = "moji" With .Offset(, 1) .Interior.Color = vbRed .CopyPicture DoEvents: DoEvents .Interior.Pattern = xlNone End With .PasteSpecial End With Me.Pictures(Me.Pictures.Count).Name = "mask" Set pic = Me.Pictures("mask") If ret = vbYes Then 背景画像作成 画像 With pic.ShapeRange.Fill .Visible = msoTrue .UserPicture 画像 Kill 画像 .Transparency = 0.5 .TextureTile = msoFalse End With End If Application.CommandBars.ExecuteMso "PictureMoreTransparency" End Sub Private Sub 背景画像作成(fname As String) With ActiveSheet.ChartObjects.Add(0, 0, 5, 5).Chart .PlotArea.Fill.Visible = msoFalse .ChartArea.Fill.Visible = msoFalse .ChartArea.Border.LineStyle = 0 .Export fname .Parent.Delete End With End Sub excel2016 win10(64) この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195811] Re[1]: マクロで画像の透明度を調整する方法をお教え下さい。- ■ / 記事引用/メール受信=OFF■ □投稿者/ kazuo -(2023/07/05(09:33)) □U R L/ 一週間経ちましたが、コメントがないのでやはりプロパティは存在しないのでしょうね。 今のところ、透明度は一度のみの設定で良く、15%刻みで十分なのでギャラリーを使用することにします。 リボン操作方法としてギャラリーまでは公開されていないようなので、SendKeysを使うことにします。 または手動で行います。 |
このトピックに書きこむ |
---|