プロが教える店舗&オフィスのセキュリティ対策術

初めまして。

H2セルから横方向に
A(1)、B(1)、C(1)、D(1)、A(2)、B(2)、C(2)、D(2)、A(3)、B(3)、C(3)、D(3)、、、、続く
というように表の見出しを一気に作りたいのですが、上手く行きません。
実際はABCDももっと項目があり、連番も50位まで付けたいです。

マクロの記録をいじる程度しか出来ません~_~;

質問者からの補足コメント

  • いくつかご回答有難うございます。
    そうなんです!オートフィルでなるとかなると思ったのですが、同じ連番で()かっこ内の連番が可変しません(-_-;

      補足日時:2018/02/19 15:25

A 回答 (4件)

こんにちは!



VBAになりますが、一例です。

>実際はABCDももっと項目があり、連番も50位まで付けたいです。
↓の画像のようにA1セルから1行目に「項目」を羅列しておく!という前提です。

Sub Sample1()
Dim j As Long, cnt As Long, myCol As Long
myCol = Cells(1, Columns.Count).End(xlToLeft).Column
Do Until cnt = 3 '//★//
cnt = cnt + 1
For j = 1 To myCol
Cells(2, (cnt - 1) * myCol + j + 7) = Cells(1, j) & "(" & cnt & ")"
Next j
Loop
End Sub

※ とりあえず「連番」は「3」までとしていますので、
コード内の「★」の部分の
>cnt = 3
の「3」の部分を「50」とか変更し必要数を調整してみてください。m(_ _)m
「初めまして。 H2セルから横方向に A(」の回答画像4
    • good
    • 1
この回答へのお礼

有難うございます。思った通りの結果になりました。これを機にもう少し勉強致しますm(。v_v。)m

お礼日時:2018/02/19 17:09

No1です



>同じ連番で()かっこ内の連番が可変しません
原因がよくわからないけれど、それでは次善の策として

1)A(1)、B(1)、C(1)、D(1)を入力
 (今回は文字通りアルファベットのA,B,C,Dで)
2)目的の範囲までフィルコピー
 (A~Dならできることを、当方の環境で確認済み)
3)2行目に対してA→「実際の文字列」として置換
 (A~Dに対して順に行う)
・・・であればできると思います。

あるいは、No2様の回答のようにどこかの行にA~Dに相当する文字を入れておいて、関数のオートフィルででA(1)・・を表示させておいて。
表示された行を選択コピー、値のペーストで関数式を外す方法でも可能だと思います。
    • good
    • 1
この回答へのお礼

ご丁寧に有難うございます。
動作の確認までして頂き有難うございます!

お礼日時:2018/02/19 17:07

どこかのセルにABCDがあればなんとかなりますが。

    • good
    • 1

こんにちは


1回作成するだけなら・・・
 1)H2セルからK2セルに A(1)、B(1)、C(1)、D(1) を記入
 2)H2:K2を選択
 3)右下のフィルハンドルを必要な範囲まで右へドラッグ

※ 実際のA、B、C、Dの内容にもよりますが、これでできる可能性が高いと思います。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!