25日目 「あ」の中の「め」【30日間1日1本マクロ生活】




30日間1日1本マクロ生活、25日目です。

マクロを書く準備は、0日目に記事を書きました。

いろんなものが「悪い」問題

今日の問題、いろんなものが「悪い」です。

まず、何よりも意地が悪い。こんな意地悪な問題はないと思いますね。

次に、目に悪い。出題しておいてなんですが、わたしは解こうとは思いません。はい。

そして何より、頭が悪い。こんな問題に取り組んで、何の解決にもなりません。誰も幸せにならない。

とりあえずコードを


Sub あの中のめ()
    Columns("A:J").ColumnWidth = 2.75
    For Each c In Range(Cells(1, 1), Cells(10, 10))
        c.Value = "あ"
    Next c
    
    For i = 1 To 10
        x = Int(Rnd() * 10) + 1
        y = Int(Rnd() * 10) + 1
        Cells(y, x) = "め"
    Next i
    
End Sub

Sub こたえ()
    For Each c In Range(Cells(1, 1), Cells(10, 10))
        If c.Value = "め" Then
            c.Interior.ColorIndex = 3
        End If
    Next c
    
End Sub

今日は2つのマクロを書いてます。

1本目は出題。2本目は解答です。

10×10のセルの中に、90個の「あ」と10個の「め」を書くマクロです。

10個の「め」を探す問題です。

2行目の「Columns(“A:J”).ColumnWidth = 2.75」は、列の幅を指定しています。

さあ、探してみて下さい。わたしはイヤです。

実行結果

マクロを記述するウィンドウの「Sub」と「End Sub」の間にカーソルを置いて、画面上方の再生ボタン的なアイコン(右向きの三角形)をクリックするか、[F5]キーを押して実行します。

はい、これが答え。どうです?目が痛くなったでしょ。頭が悪いにも程がある。

「め」を探して見つかっても、「だからなんなんだ」ですよね。

Excelは便利

悔しいですが、Excelは便利です。

Microsoftにお金を払うのは癪でしょうがないんですが、Excelばかりは仕方がない。

マクロを書くようになると、Excelからは離れられないですね。

30日間、頑張ります。