三流君 ken3のmemo置き場

三流プログラマーのメモ書きです。主にVBAやWindowsの話題が多いです

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
よく検索されるキーワード: [質問回答XXXXさんへ] [CreateObject] [VBA] [JRA競馬オッズ]

ウォッチ式の使用例として PowerPoint VBA グラデーション 色を ウォッチ式でトロイおじさんが探ってみた

f:id:ken3memo:20220324014351j:plain
結果を先に書くと、
Shape.TextFrame2.TextRange.Font.Fill.GradientStops.Item(1).Color
で取得できました。
- : TextFrame2 : : TextFrame2/TextFrame2 : Module1.aaa
- : TextRange : : TextRange2/TextRange2 : Module1.aaa
- : Font : : Font2/Font2 : Module1.aaa
- : Fill : : FillFormat/FillFormat : Module1.aaa
- : GradientStops : : GradientStops/GradientStops : Module1.aaa
: Count : 4 : Long : Module1.aaa
- : Item 1 : : Variant/Object/GradientStop : Module1.aaa
- : Color : : ColorFormat/ColorFormat : Module1.aaa
: RGB : 16644855 : MsoRGBType : Module1.aaa

? objShape.TextFrame2.TextRange.Font.Fill.GradientStops.Item(1).Color
65535

が、たどり着いた場所でした。
何言ってんだ・・・

youtu.be
https://youtu.be/ZAuhoJLaSNM
↑文字が小さい時は、YouTubeに飛びフルスクリーンで見てください。

00:00 0.挨拶
00:23 1.実際に色を変えてみる
03:21 2.ウォッチ式の設定 しかける
07:37 3.グラデーションはイロイロあるお話
10:43 図形や背景色 の グラデーション

1.実際に色を変えてみる
頭で、 デバッグ
イミディエイト で
objShape.TextFrame2.TextRange.Font.Fill.GradientStops.Item(1).Color = rgb(&hff,0,0)
と直接セットして、グラデーションの変化を見せる

2.ウォッチ式でトロイおじさんが探ってみた
#ウォッチ式 の使い方を説明 #イミディエイト と 合わせて #デバッグ するといいですよ。
Watch : + : objShape : : Shape/Shape : Module1.aaa
: Name : "タイトル 1" : String : Module1.aaa
- : TextFrame2 : : TextFrame2/TextFrame2 : Module1.aaa
- : TextRange : : TextRange2/TextRange2 : Module1.aaa
- : Font : : Font2/Font2 : Module1.aaa


3.グラデーションにはイロイロあって
背景色のグラデーションだったり、
枠線だったり
文字にグラデーションをかけてなく、単色だったり。
分岐点?は、4つ固定じゃなかったり。

そんなこんなで、グラデーションをVBAで触るのは、大変そうです・・・

以上、ウォッチ式でグラデーションを探ってみた話でした。

ついでに、背景色のグラデーションを探ってみた・・・
+ : Fill : : FillFormat/FillFormat : Module1.aaa
- : GradientStops : : GradientStops/GradientStops : Module1.aaa
: Count : 3 : Long : Module1.aaa
- : Item 1 : : Variant/Object/GradientStop : Module1.aaa
- : Color : : ColorFormat/ColorFormat : Module1.aaa
: RGB : 8801066 : MsoRGBType : Module1.aaa

確認で使用した、STOPで止める ソース

Option Explicit

Sub aaa()  'パワーポイント Slides を1つ1つSTOPで止める ウォッチ式で確認テスト用
    Dim nPAGE As Integer
    Dim objShape As Shape
    
    nPAGE = ActiveWindow.Selection.SlideRange.SlideIndex '選択しているページ
    
    'テストで選択ページの.Shapesを探る
    For Each objShape In ActivePresentation.Slides(nPAGE).Shapes
        Debug.Print
        Debug.Print "Shape.Name:" & objShape.Name
        Debug.Print "Fill.Type:" & objShape.Fill.Type
        Debug.Print "Fill.GradientStyle:" & objShape.Fill.GradientStyle
        Debug.Print "Fill.GradientVariant:" & objShape.Fill.GradientVariant
        
        objShape.Select  'わかりやすいように該当オブジェクトを選択
        Stop  '止める
    Next

    MsgBox "終了"
End Sub



2022/03/28 追記

パワポのスライドタイトルをExcel

とコメントが来たので、パワポのテキスト取得にチャレンジしてみたいと思います。
ken3memo.hatenablog.com

Ken3 ホームページ 目次

分類:HPを大きく分けると4つの柱(分類)です。
・[Excel/Access VBA]の解説
・[ASP(Active Server Pages)]の解説。
・[元コンビニ店長時代の話]が弟に巻き込まれ、失敗した脱サラ、畑違い?の仕事で失敗。
・[プログラマーの愚痴]では、あまり見せたくない三流プログラマーの内面かな。
三流君を踏み台にする
主に上記4つの分類でHP作成やメルマガの発行を行ってます。
※更新頻度が落ちていて情報の鮮度が悪いです。



本当に三流なんです(笑):たまにスゴイですねなんて言われることもありますが、
真実は→ [三流君の真実は...] ←を初めに見てくださるとわかると思います。
(からくりは、成功例↑しか載せてなくて ヒドイ失敗例はお蔵入り迷宮入りが多かったりします)