こんにちは。
いつ花粉症になるかとびくびくしているymです。
さて、どこまで進んだっけなぁ~と、前回までにつくったものをいじっていたところ・・・。
・・・。
元に戻すのめんど!!!
というわけで今回はずっと放置されていた右側の「はじめから」ボタンを実装しようとおもいます。
「はじめから」に必要なのは、
「背景色」「文字」「文字色」の3つの初期化と、
白/黒のターンのリセットです。
ん、背景色の初期化・・・?
前回つくったものが流用できそうですねぇ!
https://glodia.jp/2018/01/22/3069/
ではそれを踏まえて、前回追加した「標準モジュール」に書いていきましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
Sub はじめから() Dim Piece_Color_W As Long Dim Piece_Color_B As Long Piece_Color_W = RGB(255, 255, 255) '白' Piece_Color_B = RGB(0, 0, 0) '黒' Dim Turn As Range 'どっちのターンか表示するセル' Set Turn = Range("K2") '最初のターンは白' Turn.Value = "白" '背景色' Call 背景色初期化 '文字色' Range("B2:I3").Font.Color = Piece_Color_B Range("B8:I9").Font.Color = Piece_Color_W '駒' 'クリア' Range("B2:I9").Value = "" 'ポーン' Range("B3:I3").Value = "歩" Range("B8:I8").Value = "歩" 'ナイト' Range("C2").Value = "騎" Range("H2").Value = "騎" Range("C9").Value = "騎" Range("H9").Value = "騎" 'ビショップ' Range("D2").Value = "僧" Range("G2").Value = "僧" Range("D9").Value = "僧" Range("G9").Value = "僧" 'ルーク' Range("B2").Value = "城" Range("I2").Value = "城" Range("B9").Value = "城" Range("I9").Value = "城" 'クイーン' Range("E2").Value = "女" Range("E9").Value = "女" 'キング' Range("F2").Value = "王" Range("F9").Value = "王" End Sub |
白/黒のターンは、”K2″に書かれた文字で判別をするようにします。
「背景色」は前回”関数化”をした「背景色初期化」の関数を呼び出します。
「文字色」は”Font.Color”で設定します。
「文字」は、一度盤上をリセットしたあと、”Value”で書いていきます。
また、最初に「Sheet1」の「Worksheet_SelectionCange」に書いていた
「後ほどPublic化」とコメントしていたTurn_W = Trueを消し、
「ターンの判別」を追加しちゃいましょう。
1 2 |
'Turn_W = True' |
1 2 3 4 5 |
'ターンの判別' If Turn.Value = "白" Then Turn_W = True End If |
さて、あとは、ボタンと今つくったプログラムをくっつけるだけです。
ボタンを右クリックして、「マクロの登録」を選びます。
「はじめから」を登録。
では、先ほどの状態から、
「はじめから」ボタンをクリック。
できましたねぇ。
今回はここまで!ではまた次回。
ソースはGitHubにありますので、
よろしければ以下プロフィールのアイコンからゲットしてみてくださいね。