午後わてんのブログ

ベランダ菜園とWindows用アプリ作成(WPFとC#)

画像付き見出し付きテキストボックス作成のフローチャート書いてみた(1/3)

午後のパレットその43、午後のツールで画像付き見出し付きテキストボックスの見出しを画像に重ねる ( Windows ) - 午後わてんのブログ - Yahoo!ブログ
 
午後のツールのこのボタンのメモ
イメージ 1
画像付き見出し付きテキストボックスを作成するボタン
 
ボタン押した時の動き

f:id:gogowaten:20191023132910p:plain

f:id:gogowaten:20191023132924p:plain

選択セルの値を使って

見出しと本文と画像の3つの図形を作成して
グループ化
 
 
 
図形作成にセルの値を使うからセルを取得する必要がある
選択されているセルを取得するには
Selection.Areas
これで離れた場所の選択でも取得できる
AreasのなかのItem1、Item2…がそれぞれのセルの塊になる

Sub testAreas()
    Dim A As Areas
    Set A = Selection.Areas
    
    Dim A1 As Range, A2 As Range, A3 As Range
    Set A1 = A.Item(1)
    Set A2 = A.Item(2)
    Set A3 = A.Item(3)
 
    ’それぞれのセルアドレス
    Dim Ad1, Ad2, Ad3 As String
    Ad1 = A1.Address
    Ad2 = A2.Address
    Ad3 = A3.Address
    
End Sub
 

f:id:gogowaten:20191023132937p:plain

それぞれのセルアドレスが取得できている、赤枠

 
フローチャート作ってみた
イメージ 4

開始がボタンのクリックイベントに関連付けになる

 
i = 1 To Areas.Count
これがエリアのループ、最初のエリアから最後のエリアまでループさせて
次の
j = 1 To Areas(i).Rows.Count
これで各エリアの中の行をループさせる
最後の行まで来たら次のエリアの最初の行からになる
 
実際に見出し付きテキストボックスを作成する部分の
sakusei図形作成のフローチャート

f:id:gogowaten:20191023132956p:plain

紫の枠の処理はまた別の関数やメソッドになっている

 
 
 
 
イメージ 1
↑の画像付き見出し付きTBボタンのクリックイベントが↓

f:id:gogowaten:20191023133011p:plain

メモがいっぱいあるけど


Private Sub CommandButton6_Click()
'画像付き見出し付きテキストボックス
    Call sakusei図形作成(PicAndTextBoxWihtMidasi, 1)
End Sub

これだけで

sakusei図形作成を呼び出しているだけ

引数の
PicAndTextBoxWihtMidasi
は作ったeTextBoxTypeという列挙型の値↓

'テキストボックスタイプ
Enum eTextBoxType
    MidasiOnly = 1              '見出しのみ
    TextBoxWithMidasi = 0       '見出し付きテキストボックス
    PicAndTextBoxWihtMidasi = 2 '画像付き見出し付きテキストボックス
End Enum

作成する図形の種類を判別するためのもの
PicAndTextBoxWihtMidasiは画像付き見出し付きテキストボックスになる

もう一つの引数1は作成する図形の種類ってさっきと同じだけど
こっちはエクセルに最初から用意されている図形で
1は四角形
2は平行四辺形とかになっている
ほかにもいっぱいある
 
 
 

全体で使う変数と列挙型(フォームのプロシージャの先頭に書く)
使っていないのもあるかも

Private myFillForeColor As FillForeColor
Public myFontColor As eFontColor
Public myTextFontColor As TextFontColor
'Private NuriColor As Long '塗りつぶしの色
'Private MoziColor As Long 'フォントカラー
 
 
'見出しの背景色用
Enum FillForeColor
    Unspecified = 0
    Sample = 1
    Random = 2
    CellLink = 3
End Enum
 
'見出しの文字色用
Enum eFontColor
    fcWhite = 0
    fcBlack = 1
    fcAuto = 2
    fcCell = 3
    fcRandom = 4
    fcWorB = 5
End Enum
 
'本文の文字色用
Enum TextFontColor
    tfcBlack = 0
    tfcAuto = 1
End Enum
 
'テキストボックスタイプ
Enum eTextBoxType
    MidasiOnly = 1              '見出しのみ
    TextBoxWithMidasi = 0       '見出し付きテキストボックス
    PicAndTextBoxWihtMidasi = 2 '画像付き見出し付きテキストボックス
End Enum

f:id:gogowaten:20191023133021p:plain

また文字数制限に引っかかったので分割記事になってしまった
続きは
画像付き見出し付きテキストボックス作成のフローチャート書いてみた(2/3) ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ