
いつもお世話になっています。
Excelで次のようなデータを作成しました。
sheet本社名簿、sheet支社名簿1、sheet支社名簿2、sheet社員情報 の4枚のシート
それぞれの印刷対象になる範囲には、「_本社」といったように名前をつけています。
範囲は先頭に1.2.3・・・のインデックスがついています。
これをリストで「_本社」を選ぶと、sheet社員情報のフォーマットに
一行づつ差し込んで印刷したいのです。
以下の構文を作成したのですが、うまくいきません。
また名簿には50行用意していますが、数人の支社もあります。
その場合、人数を指定しなくても空白行は無視することはできますでしょうか。
どうぞお力を貸してください。
Sub 社員情報_社別印刷()
Select Case Worksheets("社員情報").Range("C2").Value 'C2でリストから範囲選択します。
Case Is = "_本社"
Sheets("本社名簿").Select
Application.Goto Reference:="Print_Area" 'Print_Areaはフォーマット範囲です。
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("A1").Select 'A1セルを選択する
Case Is = "_支社1"
Sheets("支社名簿1").Select
・・・以下繰り返し
End Select
End Sub
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
具体的なマクロを教えて欲しいのに,「一体どこにデータを差し込みたいのか」といったあなたのエクセルの様子が分かる,一番肝心な具体的エクセルの情報がまるでありません。
●今できていること:
ブックのあちらこちらのセルに
_本社
_支社1
などの,名前の定義を施してある。
社員情報というシートのC2セルに,これらの名前を選んで入力できるよう仕込んである。
●今やりたいこと
選んだ名前のセル範囲の内容を(記入されている範囲で),上から順に「所定のシート」の「所定のセル」に転記し,印刷したい
sub macro1()
dim Target as range
dim h as range
set taregt = activeworkbook.names(worksheets("社員情報").range("C2").value).referstorange
for each h in target.columns(1)
if h <> "" then
worksheets("所定のシート").range("所定のセル").value = h.value
worksheets("所定のシート").printout
end if
next
end sub
以上の基本形を下敷きに,もう一度ご自分で今やりたいことを整理して,マクロを自作してみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) 先ほど、回答者様によって教えていただいたのですがどうしたらいいか分かりません。 ユーザーフォーム上に 2 2023/02/21 22:25
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- その他(Microsoft Office) Excelのマクロについて教えてください。 1 2022/03/25 10:03
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel2007 色のカウント (VBA)
-
太字に設定されているセルの個...
-
セルがクリックされた回数をカ...
-
エクセルにて、クリックした場...
-
フォントの色を指定して削除出...
-
クリックすると文章が表示され...
-
Excelでセルをクリックす...
-
エクセルマクロ リストのデー...
-
Excelで、図形内の文字をセルに...
-
現在のセルの位置を返す関数は...
-
EXCELでハイパーリンクの解除を...
-
エクセル 数字をすべて○などの...
-
エクセル2010 セル内1文字目だ...
-
コピペして元のセルに戻るVBAに...
-
ハイパーリンクのイベント挙動...
-
エクセルでセルをダブルクリッ...
-
Excel内での検索結果をシート...
-
エクセル関数 マクロ
-
Excelの図形から特定のセルへの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel内での検索結果をシート...
-
エクセル 数字をすべて○などの...
-
クリックすると文章が表示され...
-
Excelで、図形内の文字をセルに...
-
Excel ハイパーリンクのURLを別...
-
Excelでセルをクリックす...
-
太字に設定されているセルの個...
-
マクロを実行すると画像がズレ...
-
現在のセルの位置を返す関数は...
-
Excel:セルの値(文字列)を数...
-
Excel2007 色のカウント (VBA)
-
セルの内容をテキストボックス...
-
セルがクリックされた回数をカ...
-
エクセル 未入力セルがあると...
-
エクセルマクロ 赤色の文字を検...
-
選択したセル範囲に入っている...
-
アポストロフィーの一括挿入 ...
-
エクセルでPDFリンクを大量...
-
エクセルでセルをダブルクリッ...
おすすめ情報