■ 最新の投稿

コラム~生成AIでVBAコードを書いてもらう『童謡の海を奏でるコードを書いて』さてどうなる?

Tea Time ちょっとひと息いれよう

以前、VBAでBeep音を鳴らす方法を紹介しました。

Excel VBAで音を鳴らす(Beep音)

生成AIに 「VBAのBeep関数を使って、童謡の『チューリップ』を奏でるプログラムを提供し、これを真似て童謡の『海』を奏でてほしい」と依頼するとどうなるのだろう。

<私>



ここで提供するのは、
Beep関数を使ったVBAサンプルです。
日本の童謡の『チューリップ』です。
' チューリップの演奏
Sub TulipBeep()

    ' 童謡「チューリップ」
    Call Beep(261, 1000) 'ド
    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(0, 1000) ' -

    Call Beep(261, 1000) 'ド
    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(0, 1000) ' -

    Call Beep(391.1, 1000) 'ソ
    Call Beep(330, 1000) 'ミ
    Call Beep(293.3, 1000) 'レ
    Call Beep(261, 1000) 'ド

    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(293.3, 1000)  'レ
    Call Beep(0, 1000) ' -

    Call Beep(261, 1000) 'ド
    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(0, 1000) ' -

    Call Beep(261, 1000) 'ド
    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(0, 1000) ' -

    Call Beep(391.1, 1000) 'ソ
    Call Beep(330, 1000) 'ミ
    Call Beep(293.3, 1000) 'レ
    Call Beep(261, 1000) 'ド

    Call Beep(293.3, 1000) 'レ
    Call Beep(330, 1000) 'ミ
    Call Beep(261, 1000) 'ド
    Call Beep(0, 1000) ' -

    Call Beep(391.1, 1000) 'ソ
    Call Beep(391.1, 1000) 'ソ
    Call Beep(330, 1000) 'ミ
    Call Beep(391.1, 1000) 'ソ
    
    Call Beep(440, 1000) 'ラ
    Call Beep(440, 1000) 'ラ
    Call Beep(391.1, 2000)  'ソ
    
    Call Beep(330, 1000) 'ミ
    Call Beep(330, 1000) 'ミ
    Call Beep(293.3, 1000) 'レ
    Call Beep(293.3, 1000) 'レ
    
    Call Beep(261, 2000)  'ド
    
End Sub
これを真似て、童謡の『海』を奏でるVBAをください。

<生成AI>

' 童謡「海」の演奏
Sub UmiBeep()

    ' 童謡「海」
    ' 1番目のフレーズ
    Call Beep(392, 1000) 'ソ
    Call Beep(392, 1000) 'ソ
    Call Beep(440, 1000) 'ラ
    Call Beep(392, 1000) 'ソ
    Call Beep(349.2, 1000) 'ファ
    Call Beep(392, 1000) 'ソ

    ' 2番目のフレーズ
    Call Beep(392, 1000) 'ソ
    Call Beep(392, 1000) 'ソ
    Call Beep(440, 1000) 'ラ
    Call Beep(392, 1000) 'ソ
    Call Beep(349.2, 1000) 'ファ
    Call Beep(392, 1000) 'ソ

    ' 3番目のフレーズ
    Call Beep(349.2, 1000) 'ファ
    Call Beep(392, 1000) 'ソ
    Call Beep(440, 1000) 'ラ
    Call Beep(349.2, 1000) 'ファ
    Call Beep(392, 1000) 'ソ
    Call Beep(330, 1000) 'ミ

    ' 4番目のフレーズ
    Call Beep(392, 1000) 'ソ
    Call Beep(440, 1000) 'ラ
    Call Beep(392, 1000) 'ソ
    Call Beep(349.2, 1000) 'ファ
    Call Beep(392, 2000) 'ソ

End Sub

<私>



おおっ!!すごい!!


・・・

どれどれ聴いてみようと、UmiBeep()を実行してみました。

・・・

結局は、期待した曲と違いました。

生成AIが海からインスピレーションを得て作曲したもののようです。


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です