Geminiと100本ノック 11本目:セル結合の警告
AIのGeminiがVBA100本ノックに挑戦!
AIがVBAをどこまで扱えるかの実証実験の11本目です。
そこで、独自に作成したGem(名前は「AI神髄VBA」改良を続けている)を使った回答も掲載しています。
VBA100本ノックの出題と解答
Geminiへの出題とGeminiの回答
Geminiの回答 | Geminiへの出題 | |
![]() 画像のようにシートにはところどころにセル結合があります。 これは放置しておく訳にはいきません。 セル結合されているセルには、メモ(旧コメント)で警告文を出しましょう。 ※シートは任意、警告文はご随意に |
||
![]() ![]() ![]() ![]() ![]() 承知いたしました。セル結合されているセルにメモ(旧コメント)で警告文を出すVBAコードを作成します。
コードの解説:
実行方法:
|
ステータスバーの表示とか、突然丁寧な作りこみになっていて、どうしちゃったのかな、という感じではあります。
とはいえ、VBAは良く出来ています。
ただし、実務的にはUsedRangeを使用するのはちょっと危険です。
離れた下の方のセルに何か入っているとか、書式や罫線だけ設定されていても、UsedRangeは範囲に入ってしまいます。
そのような場合、待てど暮らせどこのVBAは終わらなくなってしまいます。
UsedRangeを使うなら、セル数の上限をチェックしたほうが良いですね。
一応これを伝えたところ、以下を追加してきました。
' 使用済み範囲のセル数をチェック
If rng.Cells.Count > maxCellLimit Then
response = MsgBox( _
"使用済みセル範囲 (" & Format(rng.Cells.Count, "#,##0") & " セル) が設定された上限 (" & Format(maxCellLimit, "#,##0") & " セル) を超えています。" & vbCrLf & _
"このまま処理を続行すると、非常に時間がかかる可能性があります。" & vbCrLf & _
"続行しますか?", _
vbYesNo + vbExclamation, _
"処理範囲の確認")
If response = vbNo Then
MsgBox "処理をキャンセルしました。", vbInformation
Exit Sub ' ユーザーが「いいえ」を選択したら終了
End If
End If
これはこれで良いと思います。
出題の画像から推察すれば、あくまで1つの表なのでCurrentregionを使えば良いとは思いますが、、、
まあ、このあたりは好みと時々の都合によると思います。
AI神髄VBAへの出題とAI神髄VBAの回答
前回の10本目で使用したGemを今回は少し改良しました。
AI神髄VBAの回答 | AI神髄VBAへの出題 | |
![]() 画像のようにシートにはところどころにセル結合があります。 これは放置しておく訳にはいきません。 セル結合されているセルには、メモ(旧コメント)で警告文を出しましょう。 ※シートは任意、警告文はご随意に |
||
![]() ![]() ![]() ![]() ![]() はい、承知いたしました。「AI神髄VBA改」として、セル結合されているセルにメモ(旧コメント)で警告文を付けるVBAコードを作成します。ご要望に沿って、可能な限り短く、高速で、適切なメソッドを使用し、日本語のコメントと整形を行います。
VBAコードの解説
|
だいぶ私の書くVBAに似てきたように感じます。
たぶん私のVBAを知っている誰かにこのVBAを見せて、私が書いたと言っても特に何も疑わないかもしれません。
そのくらいのレベルになっていると思います。
同じテーマ「生成AI活用研究」の記事
Geminiと100本ノック 8本目:点数の合否判定
Geminiと100本ノック 9本目:フィルターコピー
Geminiと100本ノック 10本目:行の削除
Geminiと100本ノック 11本目:セル結合の警告
Geminiと100本ノック 12本目:セル結合の解除
Geminiと100本ノック 13本目:文字列の部分フォント
Geminiと100本ノック 14本目:社外秘シート削除
Geminiと100本ノック 15本目:シートの並べ替え
Geminiと100本ノック 16本目:無駄な改行を削除
Geminiと100本ノック 17本目:重複削除(ユニーク化)
Geminiと100本ノック 16本目:無駄な改行を削除
新着記事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コードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。