生成AI活用研究
AIがあればVBAはできる:セルに絵文字を入れる

Geminiを中心に生成AIの活用と研究の記録
公開日:2025-05-07 最終更新日:2025-05-08

AIがあればVBAはできる:セルに絵文字を入れる


生成AIの進歩が凄まじいです。
AIがあればVBAなんてスクリプトだし簡単に作成できるでしょ。


ということで挑戦してみたいと思います。
お題の趣旨は、

A1セルに「🙇‍♂️」を入れるVBA

これだけです。


今の生成AIなら瞬殺でしょ、速攻完成するはずでしょ。

VBA10大躓きポイントのページ内目次



𝕏での出題

VBA マクロ 生成AI 絵文字 サロゲートペア

#AIがあればVBAはできる
AIを使って以下のVBAを完成させて。
・A1セルに「🙇‍♂️」を入れるVBA
※絵文字を別セルに入れておいたり外部テキスト利用は禁止。純粋にVBAコードだけで実現させる。
※再現性のある(他の絵文字でも使える)プロンプトと完成したVBAコードを引用ポストで回答して下さい。


Gemini 2.5 Flash(experimental) での作成過程


AIの回答 プロンプト
VBA マクロ 生成AI 絵文字 サロゲートペア

・A1セルに「🙇‍♂️」を入れるVBA
※絵文字を別セルに入れておいたり外部テキスト利用は禁止。純粋にVBAコードだけで実現させる。
VBA マクロ 生成AI 絵文字 サロゲートペア

はい、VBAコードだけでA1セルに「🙇‍♂️」を入れる方法をご案内します。
この絵文字は複数のUnicode文字を組み合わせたシーケンスであるため、それぞれの文字のUnicodeコードポイントを取得し、ChrW関数を使って結合することで実現できます。

以下のVBAコードを標準モジュールに貼り付けて実行してください。

VBA

Sub InsertEmoji()

  ' 絵文字「🙇‍♂️」を構成するUnicodeコードポイント
  ' 🙇: U+1F647
  ' ZWJ (ゼロ幅接合子): U+200D
  ' ♂: U+2642
  
  ' ChrW関数を使って各Unicode文字を取得し、連結する
  Dim emojiString As String
  emojiString = ChrW(&H1F647) & ChrW(&H200D) & ChrW(&H2642)
  
  ' A1セルに絵文字を代入
  Range("A1").Value = emojiString

End Sub

コードの説明:
  1. &H1F647, &H200D, &H2642 は、それぞれ絵文字「🙇」、ゼロ幅接合子 (ZWJ)、および男性記号「♂」のUnicodeコードポイントを16進数で表したものです。
  2. ChrW() 関数は、指定されたUnicodeコードポイントに対応する文字を返します。
  3. & 演算子を使って、これらの文字を順番に結合し、絵文字「🙇」のシーケンスを作成しています。
  4. 作成した文字列 emojiString を Range("A1").Value に代入しています。
このコードを実行することで、外部に依存することなくVBAコードのみでA1セルに指定の絵文字が表示されます。
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア

1枚目はVBEに貼り付けた画像
2枚目は実行したときのエラー
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア


お送りいただいた画像を確認しました。
1枚目のVBEに貼り付けたコード、2枚目の実行時エラー「プロシージャの呼び出し、または引数が不正です。」から、原因はChrW(&H1F647)の部分にあると考えられます。

ChrW関数は通常、Unicodeの基本多言語面(BMP、U+0000~U+FFFF)のコードポイントを扱いますが、「🙇」(U+1F647)のようなBMP外の文字(補助多言語面など)は、単一のコードポイントではなく、UTF-16エンコーディングでは「サロゲートペア」と呼ばれる2つの16ビットコードポイントの組み合わせで表現されます。

VBAでこのような文字を扱うには、サロゲートペアを明示的に指定する必要があります。
U+1F647 のサロゲートペアは、高位サロゲートが U+D83D、低位サロゲートが U+DE47 です。

したがって、「🙇」は ChrW(&HD83D) & ChrW(&HDE47) と表現する必要があります。
そして、「🙇‍♂️」は、「🙇」 + ZWJ (U+200D) + 「♂」 (U+2642) なので、以下のようになります。

ChrW(&HD83D) & ChrW(&HDE47) & ChrW(&H200D) & ChrW(&H2642)

元のコードを修正して、このサロゲートペアを使うように変更します。

VBA
Sub InsertEmoji_Corrected()

  ' 絵文字「🙇‍♂️」を構成するUnicodeコードポイントとサロゲートペア
  ' 🙇: U+1F647 (サロゲートペア: U+D83D U+DE47)
  ' ZWJ (ゼロ幅接合子): U+200D
  ' ♂: U+2642

  ' ChrW関数を使って各Unicode文字(サロゲートペアを含む)を取得し、連結する
  Dim emojiString As String

  ' 🙇 (U+1F647) のサロゲートペア + ZWJ (U+200D) + ♂ (U+2642)
  emojiString = ChrW(&HD83D) & ChrW(&HDE47) & ChrW(&H200D) & ChrW(&H2642)

  ' A1セルに絵文字を代入
  Range("A1").Value = emojiString

End Sub

この修正されたコードで試してみてください。サロゲートペアを正しく指定することで、「プロシージャの呼び出し、または引数が不正です。」のエラーを回避できるはずです。
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア

1枚目はVBEに貼り付けた画像:コメントが文字化け
2枚目は実行後のA1セル:文字が分割されてしまっている
VBA マクロ 生成AI 絵文字 サロゲートペア
VBA マクロ 生成AI 絵文字 サロゲートペア

画像を拝見しました。

1枚目のVBEの画像でコメントが文字化けしている件ですが、これはVBE自体の表示設定や、お使いのPCの地域設定・言語設定に関連する表示上の問題である可能性が高いです。コードの実行自体には影響しないため、コメントの文字化けは気にせずコードを実行いただいて問題ありません。もし気になる場合は、VBEのオプション設定やPCのシステム設定を確認してみてください。

2枚目のExcelのA1セルの画像では、文字が分割されて「🙇」と「♂」のように表示されていますね。これは、ゼロ幅接合子(ZWJ: U+200D)を含んだ絵文字シーケンス(複数の文字を組み合わせて一つの絵文字として表示するもの)が、Excelの表示フォントやOSのレンダリング機能によって正しく結合されずに表示されている状態です。

VBAコード自体は、絵文字「🙇‍♂️」を構成する正しい文字シーケンス(U+1F647のサロゲートペア + U+200D + U+2642)をA1セルに挿入しています。コードとしては、セルに値を設定する部分は正しく機能しています。

しかし、セルに挿入された文字シーケンスを「一つの絵文字」として表示するかどうかは、Excelが使用しているフォントや、WindowsなどのOSが文字をどのように描画するかに依存します。お使いの環境やExcelのバージョン、セルに設定されているフォントによっては、この特定の絵文字シーケンスを一つの結合された絵文字として表示できないことがあります。

残念ながら、VBAのコードでセルの文字表示を強制的に結合された絵文字にさせる方法は限られています。VBAの役割は「正しい文字データをセルに入れること」であり、その後の「どう表示するか」はExcelとOSの描画機能の領域になります。

考えられる対策としては:
  1. セルのフォントを変更してみる: A1セルのフォントを「游ゴシック」以外の、絵文字の表示に比較的強いとされるフォント(例: Windowsであれば "Segoe UI Emoji" が絵文字専用フォントですが、Excelでの扱いは少し特殊です。まずは標準的な他のフォントをいくつか試してみてください)に変更して表示が変わるか確認します。
  2. ExcelのバージョンやOSのアップデート: 古いバージョンのExcelやOSでは、新しい絵文字や複雑な絵文字シーケンスの表示に対応していない場合があります。
  3. PC環境に依存する問題として受け入れる: お使いの環境では、この絵文字シーケンスが結合して表示されないという仕様である可能性も高いです。
ご提示いただいた状況は、VBAコードの誤りではなく、ExcelとOSの文字描画の制約によるものと考えられます。VBAコードとしては、サロゲートペアを用いた修正後のコードが、セルに絵文字の構成要素を挿入する正しい方法です。

このまま続けてAI自身に気付かせるのは、さすがに無理そうですね。
文字コード
サロゲートペア
異体字セレクタ
絵文字対応フォント
これらをプロンプトで伝えないと先に進まないようです。
ただし、そもそも私は完成のVBAコードがわかっているので、答えを知った上で誘導しているだけにも思えてしまいます。
そういうことなので、もう真っすぐに完成プロンプトを目指すことにしました。


独自に考えたプロンプト作成のチェックリスト/テンプレート

プロンプト作成のチェックリスト/テンプレート

  1. 目的/ゴール
  2. 役割/ペルソナ
  3. 状況/背景/使用シーン
  4. 指示内容/依頼内容
  5. 含めるべき要素
  6. 除外する要素(ネガティブ制約)
  7. 出力形式/構成
  8. トーン/文体
  9. 制約条件
  10. 参考資料/出力例

プロンプト作成で注意すべき点

  • 複雑なタスクは分解(段階的なプロンプト)
  • 繰り返し調整する前提で試す
  • 必要に応じて思考のプロセスを指示

内容によって不要な項目は削除します。
場合によって項目の追加もしてください。


完成プロンプトを目指して

上のテンプレートを参考にプロンプトを書きます。

プロンプトの初期案

目的:
A1セルに「🙇‍♂️」を入れるVBAを作成。

指示内容/依頼内容:
・絵文字の文字コードを調べる。
・絵文字は文字コードから文字を作る。
・この絵文字はサロゲートペアです。
・この絵文字は異体字セレクタも含んでいます。
・A1セルは絵文字に対応したフォント("Segoe UI Emoji")に設定する。

含めるべき要素:
・日本語でコメント(先頭に「'」)を入れる。
・インデントはブロック構文内を4文字下げる。

制約条件:
・VBAのコメントには絵文字を入れない。
これをAIに入れると、ゼロ幅接合子が抜けたり等々、なぜか少しずつ違ったVBAを生成してしまいます。
そこで、このプロンプトの改善をAIに手伝ってもらったりしながら完成を目指しました。
以下はAIが出してきた改善案の一例です。
VBA マクロ 生成AI 絵文字 サロゲートペア

AIが出してきた改善案を参考にプロンプトを書き直し、実際に実行、そして再び改善
これを何度か繰り返してプロンプト作成を進めました。

作成されたVBAを実行して分かったことがあります。
これはエクセルのバグっぽい挙動ですが、先にフォントを設定しておかないとうまく絵文字が表示されないようです。

VBA マクロ 生成AI 絵文字 サロゲートペア

このままF2後にEnterで正しく表示されます。
これの対処もプロンプトには書き加えています。


完成したプロンプト

【目的】
A1セルに「🙇‍♂️」を入れるVBAを作成。
Unicodeや、サロゲートペア、異体字セレクタ・絵文字スタイル指定子などに関する知識の確認。

【指示内容/依頼内容】
VBAコードを作成では以下の点に注意する。
・絵文字の文字コードを調べる。
・絵文字は文字コードから文字を作る。
・この絵文字はサロゲートペアです。
・この絵文字は異体字セレクタ・絵文字スタイル指定子を含みます。
・ChrW関数は2バイトの16進数で指定する関数です。
・絵文字を入れる前に出力セルは絵文字に対応したフォント("Segoe UI Emoji")に設定する。

【VBA記述の規約】
VBA記述では以下の規約を守る。
・日本語でコメント(先頭に「'」)を入れる。
・VBEはUTF-8に対応していないのでコメントはSJISのみで記述する。絵文字は使用禁止。
・SubやFunctionの先頭には概要を記述する。
・インデントはブロック構文内を4文字下げる。

【出力形式】
・VBAコードのをテキストとして出力する。
・Subプロシージャとして定義する。


完成したプロンプトの実行結果

以下は、先のプロンプトを代表的な生成AIに入れた結果です。
VBAコード部分のみ掲載(解説は省略)します。

Gemini 2.5 Flash

' 目的: A1セルに絵文字「🙇‍♂️」を挿入する
' 概要:
' このプロシージャは、A1セルのフォントを絵文字対応フォントに設定した後、
' Unicodeのサロゲートペア、異体字セレクタ、ゼロ幅接合子、男性記号から成る
' 絵文字「🙇‍♂️」を構築し、A1セルに代入します。
' ChrW関数を使用して、指定された16進数のUTF-16コード単位から文字を作成します。
Sub InsertBowingManEmoji()

  ' 変数宣言
  Dim targetCell As Range
  Dim emojiString As String

  ' 対象とするセル (A1セル) を設定する
  ' ここではアクティブなシートのA1セルを指定します。
  Set targetCell = ActiveSheet.Range("A1")

  ' 絵文字を正しく表示するために、セルのフォントを絵文字対応フォントに設定します。
  ' "Segoe UI Emoji" はWindowsで広く使われる絵文字フォントです。
  ' 他のOSや環境では異なるフォントが必要になる場合があります。
  On Error Resume Next ' フォントが存在しない場合のエラーを無視
  targetCell.Font.Name = "Segoe UI Emoji"
  On Error GoTo 0   ' エラー処理を元に戻す

  ' 絵文字「🙇‍♂️」は、複数のUnicodeコードポイントと制御文字の組み合わせで構成されます。
  ' これらのコードポイントは、UTF-16エンコーディングにおいて
  ' 1つまたは複数の16ビットコード単位として表現されます。
  ' ChrW関数は、この16ビットコード単位(10進数または16進数で指定)に対応する文字を返します。

  ' 絵文字「🙇‍♂️」の構成要素 (UnicodeコードポイントとUTF-16コード単位 16進数):
  ' 1. 「🙇」(Person Bowing Deeply): U+1F647
  '  これはBMP外のコードポイントであるため、サロゲートペア (D83D DC47) として表現されます。
  '  - 高位サロゲート (High Surrogate): U+D83D (16進数 D83D)
  '  - 低位サロゲート (Low Surrogate): U+DC47 (16進数 DC47)
  ' 2. 「」(異体字セレクタ/絵文字スタイル指定子): U+FE0F
  '  この文字が絵文字スタイルで表示されることを明示します。(16進数 FE0F)
  ' 3. 「」(ゼロ幅接合子 ZWJ): U+200D
  '  複数の文字を組み合わせて新しい絵文字を形成するために使用される非表示文字です。(16進数 200D)
  ' 4. 「♂」(Male Sign): U+2642
  '  男性を示す記号です。(16進数 2642)

  ' ChrW関数を使用して、これらのUTF-16コード単位を文字列として結合します。
  ' 各&hXXXXは16進数リテラルを表します。ChrW関数は2バイト(16ビット)の値を引数にとります。

  ' サロゲートペアの高位サロゲート (U+D83D)
  emojiString = ChrW(&HD83D)
  ' サロゲートペアの低位サロゲート (U+DC47) を結合
  emojiString = emojiString & ChrW(&HDC47)
  ' 異体字セレクタ/絵文字スタイル指定子 (U+FE0F) を結合
  emojiString = emojiString & ChrW(&HFE0F)
  ' ゼロ幅接合子 ZWJ (U+200D) を結合
  emojiString = emojiString & ChrW(&H200D)
  ' 男性記号 (U+2642) を結合
  emojiString = emojiString & ChrW(&H2642)

  ' 結合してできた絵文字文字列をA1セルに代入します。
  targetCell.Value = emojiString

  ' オブジェクト変数の解放
  Set targetCell = Nothing

End Sub

  ' サロゲートペアの低位サロゲート (U+DC47) を結合
  emojiString = emojiString & ChrW(&HDC47)
ここの文字コードが間違っていますね。
DC47 → DE47
それ以外は特に問題はありません。

ですが、なぜか、、、
・VBEはUTF-8に対応していないのでコメントはSJISのみで記述する。絵文字は使用禁止。
これが守られていないです。
何故でしょう・・・

Gemini 2.5 Pro

Sub InsertEmojiManBowing()
  ' 概要: ExcelのA1セルに絵文字「🙇‍♂️」(土下座する男性)を挿入します。
  '    この処理では、絵文字のUnicode構成要素を理解し、
  '    サロゲートペア、ZWJ(ゼロ幅接合子)、および絵文字スタイル指定子を
  '    ChrW関数を用いて文字列として構築します。
  '    また、挿入前にセルのフォントを絵文字表示に適したフォントに設定します。

  Dim targetCell As Range
  Dim emojiString As String
  Dim highSurrogate As String
  Dim lowSurrogate As String
  Dim personBowing As String
  Dim zeroWidthJoiner As String
  Dim maleSign As String
  Dim emojiStyleSelector As String

  ' 処理対象のセルを設定 (例: アクティブシートのA1セル)
  On Error Resume Next ' シートが存在しない場合などのエラーをスキップ
  Set targetCell = ThisWorkbook.Sheets(1).Range("A1")
  If targetCell Is Nothing Then
    ' アクティブシートが存在しない、または特定できない場合、新しいシートを追加して試みる
    Set targetCell = ThisWorkbook.Worksheets.Add().Range("A1")
    If targetCell Is Nothing Then
      MsgBox "対象セルを設定できませんでした。", vbExclamation
      Exit Sub
    End If
  End If
  On Error GoTo 0 ' エラーハンドリングを元に戻す

  ' 出力セルに絵文字対応フォントを設定
  ' Windows環境では "Segoe UI Emoji" が代表的な絵文字フォントです。
  targetCell.Font.Name = "Segoe UI Emoji"

  ' 絵文字「🙇‍♂️」のUnicode構成要素:
  ' 1. 🙇 (PERSON BOWING DEEPLY) : U+1F647
  '  この文字はUnicodeの補助多言語面(SMP)にあり、UTF-16ではサロゲートペアで表現されます。
  '  上位サロゲート (High Surrogate): U+D83D
  '  下位サロゲート (Low Surrogate) : U+DE47
  ' 2. ? (ZERO WIDTH JOINER - ZWJ) : U+200D
  '  複数の絵文字を結合して一つの絵文字として表示させるために使用します。
  ' 3. ♂ (MALE SIGN) : U+2642
  '  男性記号です。
  ' 4. ? (VARIATION SELECTOR-16 - VS16) : U+FE0F
  '  直前の文字(この場合はMALE SIGN)を絵文字スタイルで表示するよう指定します。
  '  これがないとテキストスタイルで表示されることがあります。

  ' ChrW関数は、0から65535までの数値を引数に取り、
  ' 対応するUnicode文字(UTF-16のコードユニット)を返します。
  ' 16進数で指定する場合、2バイト(4桁)の範囲です。
  ' U+10000以上の文字はサロゲートペアを使用し、ChrWを2回使って表現します。

  ' U+1F647 (🙇 - PERSON BOWING DEEPLY) の構築
  ' 上位サロゲート (&HD83D)
  highSurrogate = ChrW(&HD83D)
  ' 下位サロゲート (&HDE47)
  lowSurrogate = ChrW(&HDE47)
  personBowing = highSurrogate & lowSurrogate

  ' U+200D (? - ZWJ)
  zeroWidthJoiner = ChrW(&H200D)

  ' U+2642 (♂ - MALE SIGN)
  maleSign = ChrW(&H2642)

  ' U+FE0F (? - VARIATION SELECTOR-16)
  emojiStyleSelector = ChrW(&HFE0F)

  ' 各要素を結合して最終的な絵文字文字列を作成
  ' 🙇 + ZWJ + ♂ + VS16 => 🙇‍♂️
  emojiString = personBowing & zeroWidthJoiner & maleSign & emojiStyleSelector

  ' セルに絵文字文字列を挿入
  targetCell.Value = emojiString

  ' 後片付け
  Set targetCell = Nothing

  MsgBox "A1セルに絵文字「🙇‍♂️」を挿入しました。" & vbCrLf & _
      "フォント: Segoe UI Emoji" & vbCrLf & _
      "構成Unicode: U+1F647 U+200D U+2642 U+FE0F", vbInformation

End Sub

Sheets(1).Range("A1")の存在確認はさすがに不要でしょwww
そこはご愛敬としても、ちょっと丁寧すぎと言いますか長すぎwww
それにしても、なぜコメントに絵文字を出力しているのでしょう。

ChatGPT

' 概要:
' このマクロは、セルA1に「🙇‍♂️」という絵文字(おじぎをする男性)を入力し、
' フォントを「Segoe UI Emoji」に設定して絵文字が正しく表示されるようにします。
' この絵文字は、サロゲートペアおよび異体字セレクタ・絵文字スタイル指定子を含みます。

Sub InsertBowEmoji()
  ' セルA1を指定
  Dim targetCell As Range
  Set targetCell = ThisWorkbook.Sheets(1).Range("A1")

  ' セルのフォントを絵文字対応フォントに設定
  targetCell.Font.Name = "Segoe UI Emoji"

  ' 「🙇‍♂️」の構成(Unicodeコードポイント):
  ' 🙇 U+1F647(人がおじぎをしている)
  ' → サロゲートペア: &H1F647 = ChrW(&HD83D) & ChrW(&HDE47)
  ' ♂ U+2642(男性記号)+U+FE0F(絵文字スタイル指定子)
  ' → 男性記号: &H2642 = ChrW(&H2642)
  ' → 異体字セレクタ: &HFE0F = ChrW(&HFE0F)

  ' 絵文字を結合してセルに入力
  targetCell.Value = ChrW(&HD83D) & ChrW(&HDE47) & ChrW(&H200D) & ChrW(&H2642) & ChrW(&HFE0F)
End Sub

コメントに絵文字を出力していること以外は良いですね。

Claude

Sub 絵文字をA1セルに挿入()
  ' 概要: お辞儀をする男性の絵文字「🙇‍♂️」をA1セルに挿入するプロシージャ
  ' この絵文字は複数のコードポイントから構成されているサロゲートペア絵文字です
  ' 構成:
  ' - 基本文字: 🙇 (U+1F647) - お辞儀をする人
  ' - ZWJ結合子: U+200D - 後続の文字と結合することを示す
  ' - 男性記号: ♂ (U+2642) - 男性を表す記号
  ' - 異体字セレクタ: U+FE0F - 絵文字スタイル指定子
  
  ' A1セルを選択
  Range("A1").Select
  
  ' セルのフォントを絵文字対応フォントに設定
  With Selection.Font
    .Name = "Segoe UI Emoji"
    .Size = 14
  End With
  
  ' サロゲートペア絵文字「🙇‍♂️」を文字コードから構築
  Dim emojiString As String
  
  ' お辞儀をする人 (U+1F647) - サロゲートペアとして表現
  ' High surrogate: D83D, Low surrogate: DE47
  emojiString = ChrW(&HD83D) & ChrW(&HDE47)
  
  ' ZWJ結合子 (U+200D)
  emojiString = emojiString & ChrW(&H200D)
  
  ' 男性記号 (U+2642)
  emojiString = emojiString & ChrW(&H2642)
  
  ' 異体字セレクタ/絵文字スタイル指定子 (U+FE0F)
  emojiString = emojiString & ChrW(&HFE0F)
  
  ' A1セルに絵文字を設定
  ActiveCell.Value = emojiString
  
  ' 列幅を自動調整
  Columns("A:A").AutoFit
End Sub

これもコメントに絵文字を出力していること以外は良いですね。

コメントに絵文字を出力してしまうのはなぜなのでしょうか。
いろいろプロンプトを工夫してみたのですが効果ありませんでした。
日本語のコメントを入れるということと絵文字禁止が相反してしまうのでしょうか・・・

それぞれ複数回実行すると、毎回すこしずつ違ったVBAコードになります。
時に正しいVBAになったり、少しだけ間違ったVBAになったり・・・
なかなか生成AIでのVBA開発は難しいものですね。
生成AIの結果が安定しないのは、いろいろな結果を受け取れるという利点はあるものの、再現性が低いというのは実用としてはネックになる場合もありそうです。


筆者が書いたVBAコード

AIのVBAはコメントも長いし、文字コードも分割してそれぞれを変数に入れているのでちょっと長くて見づらいと思います。
端的に必要な部分だけでわかりやすいVBAにしておきました。

Sub EmojiIntoA1()
  Dim sEmoji1 As String: sEmoji1 = WorksheetFunction.Unichar(&H1F647) 'お辞儀の基本文字
  '           sEmoji1 = ChrW(&HD83D) & ChrW(&HDE47) '↑これと同じ
  Dim sEmoji2 As String: sEmoji2 = ChrW(&H200D) 'ゼロ幅接合子
  Dim sEmoji3 As String: sEmoji3 = ChrW(&H2642) '♂
  Dim sEmoji4 As String: sEmoji4 = ChrW(&HFE0F) '異体字セレクタ・絵文字スタイル
  With ActiveSheet.Range("A1")
    .Font.Name = "Segoe UI Emoji"
    .Value = sEmoji1 & sEmoji2 & sEmoji3 & sEmoji4
  End With
End Sub




同じテーマ「生成AI活用研究」の記事

AI(Gemini)とエクセル数式対決 その1
AI(Gemini)とエクセル数式対決 その2
ダウンロードフォルダのExcelファイルブロック解除
AIがあればVBAはできる:セルに絵文字を入れる
Geminiと100本ノック 1本目:セルのコピー
Geminiと100本ノック 2本目:セルのコピー
Geminiと100本ノック 3本目:セルの消去
Geminiと100本ノック 4本目:セルの消去
Geminiと100本ノック 5本目:セルの計算
Geminiと100本ノック 6本目:セルに計算式
Geminiと100本ノック 5本目:セルの計算


新着記事NEW ・・・新着記事一覧を見る

第5章:AI×VBAでつまづかない!トラブルシューティングとAIとの付き合い方 |生成AI活用研究(2025-05-20)
第4章:【事例で学ぶ】AIとVBAでExcel作業を劇的に効率化する! |生成AI活用研究(2025-05-20)
第3章:AIを「自分だけのVBA先生」にする!質問・相談の超実践テクニック|生成AI活用研究(2025-05-19)
第2章 VBAって怖くない!Excelを「言葉で動かす」(超入門)|生成AI活用研究(2025-05-18)
第1章:AIって一体何?あなたのExcel作業をどう変える?(AI超基本)|生成AI活用研究(2025-05-18)
AI時代のExcel革命:AI×VBAで“書かない自動化”超入門|生成AI活用研究(2025-05-17)
Geminiと100本ノック 23本目:シート構成の一致確認|生成AI活用研究(5月16日)
AIが問う出版の未来は淘汰か進化か:AIと書籍の共存の道とは|生成AI活用研究(2025-05-16)
Geminiと100本ノック 22本目:FizzBuzz発展問題|生成AI活用研究(5月15日)
すぐに使える!生成AI プロンプト作成 実践ガイド|生成AI活用研究(2025-05-15)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.繰り返し処理(For Next)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
5.ひらがな⇔カタカナの変換|エクセル基本操作
6.RangeとCellsの使い方|VBA入門
7.メッセージボックス(MsgBox関数)|VBA入門
8.セルのクリア(Clear,ClearContents)|VBA入門
9.FILTER関数(範囲をフィルター処理)|エクセル入門
10.条件分岐(Select Case)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ