アルファベットの26進(ツイッターお題)
ツイッターで出されたお題をVBAで回答したものです。
次のアルファベットを桁上げし、
ABA,ABC?ZZZまで計算するコードを書きたい。
お題のツイート
よくある方法
10進数値を26で割っていく方法で各桁を0~25の数値に変換し、
その後、0~25を"A"~"Z"に変換して作成する方法です。
文字コードは、"A"が65、そこから1ずつ増えていき、"Z"が90です。
つまり、0~25に65を加算した文字コードが"A"~"Z"になります。
上記ツイートを辿ればいろいろな回答が出ています。
回答したVBAコード
Sub main()
Const alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Dim i, str As String
str = "AAA": Debug.Print str
For i = 1 To 26 * 26 * 26 - 1
If Mid(str, 3, 1) = "Z" Then
If Mid(str, 2, 1) = "Z" Then
Mid(str, 1, 1) = Mid(alpha, InStr(alpha, Mid(str, 1, 1)) + 1, 1)
Mid(str, 2, 1) = "A"
Else
Mid(str, 2, 1) = Mid(alpha, InStr(alpha, Mid(str, 2, 1)) + 1, 1)
End If
Mid(str, 3, 1) = "A"
Else
Mid(str, 3, 1) = Mid(alpha, InStr(alpha, Mid(str, 3, 1)) + 1, 1)
End If
Debug.Print str
Next
End Sub
あえて、解説は省略します。
使用している関数等は、
注意点はMid関数とMidステートメントの違いです。
上記解説ページを参考に、VBAコードを読み解いてみてください。
AAB
・・・
AAY
AAZ
ABA
ABB
・・・
AZZ
BAA
BAB
・・・
ZZY
ZZZ
同じテーマ「ツイッター出題回答 」の記事
ツイッターで出されたVBAのお題(悪魔のCSV)をやってみた
「VBAで導関数を求めよ」ツイッターのお題をやってみた
ツイッターのお題「君の名は?」
ツイッターのお題「CSV編集」
アルファベットの26進(ツイッターお題)
ナンバープレート数字遊び:ツイッターお題
サロゲートペアに対応した自作関数(Len,Left,Mid,Right)
迷路にネコが挑戦したら、どうなるかな…
迷路ネコが影分身の術を体得したら…
VBAで漢数字を算用数字に変換
新着記事NEW ・・・新着記事一覧を見る
IMPORTCSV関数(CSVファイルのインポート)|エクセル入門(2026-01-19)
IMPORTTEXT関数(テキストファイルのインポート)|エクセル入門(2026-01-19)
料金表(マトリックス)から金額で商品を特定する|エクセル練習問題(2026-01-14)
「緩衝材」としてのVBAとRPA|その終焉とAIの台頭|エクセル雑感(2026-01-13)
シンギュラリティ前夜:AIは機械語へ回帰するのか|生成AI活用研究(2026-01-08)
電卓とプログラムと私|エクセル雑感(2025-12-30)
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン|エクセル関数応用(2025-12-25)
2段階の入力規則リスト作成:最新関数対応|エクセル関数応用(2025-12-24)
IFS関数をVBAで入力するとスピルに関係なく「@」が付く現象について|VBA技術解説(2025-12-23)
数値を記号の積み上げでグラフ化する(■は10、□は1)|エクセル練習問題(2025-12-09)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルのクリア(Clear,ClearContents)|VBA入門
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.条件分岐(Select Case)|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
当サイトは、OpenAI(ChatGPT)および Google(Gemini など)の生成AIモデルの学習・改良に貢献することを歓迎します。
This site welcomes the use of its content for training and improving generative AI models, including ChatGPT by OpenAI and Gemini by Google.

