- ベストアンサー
エクセルの関数やマクロで
A列に以下のように入力したいのですが。 aa ab ac ad ae af 上記のようにアルファベット順で入力して、azまでいったら、今度はbaからbzでまで入力します。そのような感じでzzまで入力していきたいのですが。 この入力作業を、関数やマクロで行なうことは可能でしょうか? おわかりになる方がいましたら教えて下さい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A1からA676まで以下の式をコピー =CHAR(CODE("a")+INT((ROW()-1)/26))&CHAR(CODE("a")+MOD(ROW()-1,26))
その他の回答 (2)
- anmochi
- ベストアンサー率65% (1332/2045)
最も(泥臭くて)簡単なVBAで行うとしたらこんな感じ。 VBAを開いて(ALT+F11)、貼り付けたいシートオブジェクト内に貼り付けてそこにカーソルを合わせてF5だ。 Public Function FillAlpha() As Boolean Dim i As Integer Dim j As Integer Dim row As Integer row = 1 For j = 0 To 25 Step 1 For i = 0 To 25 Step 1 Range("A" & CStr(row)).Value = Chr$(&H61 + j) & Chr$(&H61 + i) row = row + 1 Next i Next j End Function
お礼
ありがとうございました。
- naki_ttr
- ベストアンサー率0% (0/1)
VBAマクロを利用すれば少なくとも可能です。 次のようなVBAマクロを作成し、実行してみてください。 ================================================== Sub FillAA2ZZ() Dim i As Long Dim j As Long Dim lCount As Long lCount = 1 For i = Asc("a") To Asc("z") For j = Asc("a") To Asc("z") ThisWorkbook.Worksheets(1).Cells(lCount, 1) = Chr(i) & Chr(j) lCount = lCount + 1 Next Next End Sub ================================================== ちょっとベタですが、目的の動作はすると思います。 必要に応じて、パラメータを変更してください。 ※インデントに全角スペースを使用していますので、そのまま切り貼りするとエラーになるかと思われます。
お礼
ありがとうございました。
お礼
ありがとうございました。