![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.2ベストアンサー
- 回答日時:
ALT+F11を押す
挿入メニューから標準モジュールを挿入する
下記をコピー貼り付ける
sub macro1()
dim i as long, j as long, k as long
dim n, m
on error resume next
k = application.inputbox("duplication", type:=1)
if k = 0 then exit sub
activesheet.next.range("A:E").clearcontents
for n = 1 to range("A65536").end(xlup).row
for m = 1 to k
activesheet.next.cells(j + 1, i + 1).value = cells(n, "A").value
i = (i + 1) mod 5
j = iif(i = 0, j + 1, j)
next m
next n
activesheet.next.select
end sub
ファイルメニューから終了してエクセルに戻る
元データのあるシートで実行する
#カスタマイズはご自分でお願いします。
ご回答ありがとうございました。
早速やってみましたら出来ました。
大変助かりました!
これからカスタマイズしながら少しずつ勉強してみたいと思います。
No.4
- 回答日時:
マクロを使わずに関数で行うとしたら次のようにします。
シート1のA1セルから下方にデータがあるとします。
シート2でお求めの表を表示させることにしてシート2のA1セルにはコピーを2文字ずつの時は2と1文字の時は1と入力します。また、1行を5列にするときはB1セルに5と3列にするときは3と入力します。
A2セルには次の式を入力して横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。
=IF(COLUMN(A1)>$B$1,"",IF(INDEX(Sheet1!$A:$A,ROUNDUP(ROW(A1)*$B$1/$A$1-$B$1/$A$1+COLUMN(A1)/$A$1,0))=0,"",INDEX(Sheet1!$A:$A,ROUNDUP(ROW(A1)*$B$1/$A$1-$B$1/$A$1+COLUMN(A1)/$A$1,0))))
これでお望みの列数で繰り返す文字もお望みの数で表を作成することができます。
ご回答ありがとうございました!
やってみましたら思っていましたとおりになりました!
マクロや関数やいろいろな方法で出来るのですね。
みなさん、いろいろな方法をご存じですごいですね!
普段はCADをしてまして、Excelでは基本的なことしかしたことがなかったので、これからはExcelの方も少しずつ勉強してみたいと思います。
No.3
- 回答日時:
Sheet1の A列に対応するとして
別シートから以下を実行します。
Sub ボタン1_Click()
c = 1
r = 1
For i = 1 To Sheets("Sheet1").UsedRange.Rows.Count
Cells(r, c).Value = Sheets("Sheet1").Range("A" & i).Value
If c + 1 > 5 Then
c = 1
r = r + 1
Else
c = c + 1
End If
Cells(r, c).Value = Sheets("Sheet1").Range("A" & i).Value
If c + 1 > 5 Then
c = 1
r = r + 1
Else
c = c + 1
End If
Next
End Sub
No.1
- 回答日時:
マクロではなく普通の数式(INDEX関数)をお勧めします。
この回答への補足
早速のご回答ありがとうございます。
ただ、INDEX関数もあまりよくわからないのですが、その場合、この一連の作業をすぐにできるのでしょうか?
この作業がデータ内容は変わりますが、常にありますので、手間をかけずにやりたいのですが…。
1番にご回答頂いていましたのに、お礼が遅くなって大変申し訳ありません。
補足に入れたのをお礼のつもりで終わらせてしまっていました。
教えて頂いたINDEX関数の方でもやってみましたが、セルに関数が入ってしまうので、今回はマクロの方が都合が良かったです。説明が足りなくてすみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) エクセルについて教えてください。 3 2023/06/28 09:11
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Excel(エクセル) Excelマクロの作成方法・コーディングをご教授ください。 3 2023/02/26 18:09
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Excel(エクセル) Excelに文字データのみを貼り付けたい 8 2023/05/03 15:38
- Excel(エクセル) excelの列幅高さが勝手に変わる(特定のPCだけ) 8 2022/07/14 16:51
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IFとIFS関数
-
Excelを無料で使うには? パソ...
-
セルの数を求めたい
-
エクセルの数式バーのフォント...
-
Excelの表示についての質問
-
再質問です。マクロの修正箇所...
-
データチェックを行うエクセル...
-
Excelに詳しい方! B列が「日...
-
西暦や和暦の表示をyyyymmdd表...
-
Excelで50個のセルに同じ文字を...
-
Excelの数式について教えてくだ...
-
Excel VBAで全ての矢印を赤色に...
-
エクセル関数を使って
-
祝日と土曜、日曜の合計をカウ...
-
xlsxファイルを保存する際にPDF...
-
Excelについて
-
エクセルVBA、別ブックへ転記す...
-
エクセルで「ページレイアウト...
-
2列に入っているデータを1列...
-
【ExcelVBA】名前を付けて保存→...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報