こんにちは。
行が3000行強、列が110列ほどの名簿があります。
1、2行目は見出しで、「名前」「ID」「部署」・・・・というような感じで、
3行目から個人の情報がズラーーっと並んでいます。
この表の1,2行目+個人の1行を1シートにしたいです。
(つまり3000行を一行ずつ1シートに抽出したいということです)
目的は、「あなたの名簿にはこのような情報がありますよ~」を1枚の紙にまとめて、個人別に配布することです。
10人くらいならまだ手作業でコピペできるんですが、3000人を超えているので、できればマクロや関数で一気に作りたいです。
1,2行目+個人の行を1シートにまとめる技をご教授ください。
また、最終的には印刷しますので、印刷しやすい形にできたらしたいです。
何か案があればよろしくお願いします。
No.4ベストアンサー
- 回答日時:
#2です
補足から抜粋するときに余計なところにも入ってしまい文章がおかしくなっていました
>>マクロを自動記録しつつ、書いてみた
>>差し込みを一枚ずつやるのが嫌なんですよね
下の分は間違ってコピペした部分です。無視してください
ちなみに、3000シートを作業グループ化して編集したら
スムーズな編集は無理だった。(一つ編集するのに10秒近くかかった)
2007以降なら、マルチプロセッサの実力が発揮できてもうちょっと早いと思うけど非現実的だった。
>また、最終的には印刷しますので、印刷しやすい形にできたらしたいです。
印刷用のシートを作り、INDEX関数でデータを引っ張ってくる。
INDEX関数の第2引数としたセルを、マクロで+1して、印刷の繰り返しでできると思う
(実際は 印刷→参照したセル+1 の順だけど)
No.3
- 回答日時:
>私にこれを頼んだ担当者が「差し込みを一枚ずつやるのが嫌なんですよね、シート別に分けてください」と言っていまして・・・
ワードの差し込み印刷でも、最後に文書に差し込みの処理をすれば、すべての個人票がまとめて表示されています。
個人データを、わざわざエクセルのシートに分ける意味が分からないのですが、どうしてもエクセルのシートに落としたいなら、以下のようなLoop処理したマクロを使うことになります。
http://pc.nikkeibp.co.jp/article/NPC/20070301/26 …
例えば、上記のような印刷用のテンプレートシートを作成して、そのシートに関数式またはセル位置の指定で値を代入して、そのシートを追加するような手順になります。
ちなみに元データがVLOOKUP関数が使いにくいレイアウトなら、テンプレートの固定セルに対応するセルを順次代入するコードに変えてください。
上記のページなどを参考にして、ご自分でコードを作成し、わからない部分をポイントを絞って提示されるとよいと思います。
No.2
- 回答日時:
>差し込みを一枚ずつやるのが嫌なんですよね
の意味が不明なのですが、これが一番簡単だと思うんですよね。
マクロを自動記録しつつ、書いてみた
差し込みを一枚ずつやるのが嫌なんですよね
Sub シートを追加する()
Dim tuika As Worksheet
Dim n As Long
Dim DSheet As String
DSheet = "Sheet1" 'データベースシート名
Sheets(DSheet).Select
For n = 3 To Range("A65536").End(xlUp).Row
Set tuika = Worksheets.Add
tuika.Move after:=Worksheets(Worksheets.Count)
tuika.Name = Worksheets.Count - 1
Worksheets(DSheet).Range("1:2," & n & ":" & n).Copy
tuika.Paste
Next n
End Sub
No.1
- 回答日時:
> つまり3000行を一行ずつ1シートに抽出したいということです
つまりは3000枚のシートをもつファイルを作りたい、ということですか?
シート成型自体は難しくないんですが、3000シートも作ることがエクセルにできたっけ? という根本的な問題があります。出来たとしても、シート管理が酷く大変そうです。
シート以外を使う方法(例えば差し込み印刷)をつかってはいかがですか?
例えばこんな感じで。
http://kedu.kenet.ed.jp/hp/tips/tips017.pdf
この回答への補足
at9_amさん、こんにちは。早速のアドバイスをありがとうございます。
私にこれを頼んだ担当者が「差し込みを一枚ずつやるのが嫌なんですよね、シート別に分けてください」
と言っていまして・・・
ブックはいくつかに分散されても大丈夫です。
とにかく、全行分のシートがほしいっぽいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルについて教えてください。 3 2023/06/28 09:11
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- その他(Microsoft Office) EXCELの1行を1枚の用紙にそれぞれ印刷したい。 3 2022/10/10 11:35
- Excel(エクセル) エクセルでキーリストからデータを取り出して1枚1枚印刷するには? 11 2022/06/27 09:52
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- Excel(エクセル) エクセルの複数ブックのシートを1つまとめたい 都道府県ごとに47ブックがあり、そのシートのデータを1 5 2022/11/15 14:57
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- ハッキング・フィッシング詐欺 卒業論文について。短大2年です インターネットトラブルについて研究をしています。 同じ大学の人に具体 2 2023/01/18 12:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAでオブジェクトが必...
-
エクセルマクロ 変数をワーク...
-
エクセルマクロ(超初心者)
-
マクロのコマンドボタン《Activ...
-
エクセルVBAでフォームの無効化...
-
複数シートを一括で保護を掛け...
-
VBAでVlookup機能を使うときに...
-
エクセルで品番を入れると、そ...
-
Access-VBAでExcelファイ...
-
VBAマクロ実行時エラーの修正に...
-
Worksheets メソッドは失敗しま...
-
Cellsのかっこの中はどっちが行...
-
【Excel関数】UNIQUE関数で"0"...
-
vba 2つの条件が一致したら...
-
B列の最終行までA列をオート...
-
エクセルVBA 配列からセルに「...
-
【Excel VBA】一番右端セルまで...
-
マクロの「SaveAs」でエラーが...
-
VBA シートをコピーする際に Co...
-
エクセルで特定の文字列が入っ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access-VBAでExcelファイ...
-
エクセルVBAでオブジェクトが必...
-
エクセルマクロ(超初心者)
-
複数シートを一括で保護を掛け...
-
コンボボックスへ降順に表示す...
-
エクセルのVBAについて教えてく...
-
エクセルを共有にすると、シー...
-
マクロのコマンドボタン《Activ...
-
Excell VBA にて配列に定数を代...
-
VBAでVlookup機能を使うときに...
-
エクセルマクロ 変数をワーク...
-
エクセルVBAでフォームの無効化...
-
エクセルで品番を入れると、そ...
-
EXCELに関する質問
-
マクロでフォルダ内のExcelを全...
-
エクセルVBA 別シートの最終セ...
-
エクセル マクロについて、 Inp...
-
【EXCEL-VBA】ワークシートに別...
-
マクロ実行後、画面がちかちか...
-
エクセルで特定の文字列が入っ...
おすすめ情報