エクセルVBAを使ってデータの取得・印刷までをする方法
- エクセルで簡単なデータを入力し、整理番号、住所、生年月日の情報を専用フォームにコピーして印刷する方法について、VBAの利用方法を教えてください。
- 日々のデータ量に合わせて印刷枚数を設定することも可能です。
- VBAを利用することでエクセルVBAでデータの取得・印刷を効率的に行うことができます。VBA初心者でも問題ありません。
- ベストアンサー
エクセルVABを使ってデータの取得・印刷までをしたいのですが・・・
VBA初心者です。大変悩んでいます。よろしくお願いします。 今、エクセル(シート1に)で簡単なデータを入力しています。 (A1)から順番に、右方向に、整理番号、氏名、住所、性別、生年月日、その他と(F1)まで入力して、(A2)に戻って、また新たな人の情報を同じ手順で入力しています。この作業は、1日5件の日もあれば、200件を越す日もあります。 そこで、上記の6項目のうち整理番号、住所、生年月日をシート2に作成してある専用のフォームにコピーして、個別に印刷をしたいのですが、どのようにVBAが利用できるでしょうか? また、1日の印刷量が不定であるので、5件のときは5枚、100件のときは100枚、199件のときは199枚と言うような、その日その日のデータ量にあわせる設定もできるもでしょうか? お願いいたします。
- 6765
- お礼率15% (3/19)
- Visual Basic
- 回答数3
- ありがとう数3
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
直接の回答ではありませんが、その程度であれば、「自動記録」 をしてみれば大抵解決します。 http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_020.html 「自動記録(記憶)から始める。 」を参照してやってみてください。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17068)
本当はそんなことは、しなくても良いが、関数を使って、VBAを簡単にするため、下記の方法で何度か回答をしています。 もと データのシート1の各行に連番を空き列に振ります。( A列A2からとします) フォームの印刷外の1セル(仮にA1とします)に、番号を入れます。 (実際はVBAで順次入れる。下記関数を設定後は、手作業で入れてシート2の内容が変化するさまを確認できます) フォームの整理番号を入れるセルに =VLOOKUP(A1,シート1!$A$2:$F$200,2,FALSE) 住所を入れるセルに =VLOOKUP(A1,シート1!$A$2:$F$200,3,FALSE) 以下略 を入れます。 VBEの標準モジュールで Sub test01() Worksheets("Sheet2").Select d = Range("B65536").End(xlUp).Row For i = 2 To d Range("A1") = i Range("A2:j30").PrintOut Next i End Sub を貼り付け、実行すればd-1枚内容を変えて印刷します。 Range("A2:j30")はシート2(フォーム)の印刷範囲です。 適当に実際にあわせて変えてください。 帳票見出し、項目見出し、フォント、配置、セル高、色、書式、罫線などは手作業で、VBA実行前に整えておいてください。VBAでもできるが、勉強して先の話です。
- merlionXX
- ベストアンサー率48% (1930/4007)
シート2に作成してある専用のフォームのレイアウトがわからないので適当に、整理番号がA2、住所がB2、生年月日がC2としました。 Sub test() Set sh1 = Sheets("Sheet1") 'Sheet1をsh1とする Set sh2 = Sheets("Sheet2") 'Sheet2をsh2とする x = sh1.Range("A65536").End(xlUp).Row 'Sheet1のA列最終行を取得し、Xとする For n = 1 To x 'Sheet1の1行目から最終行のデータまで繰り返す。 sh2.Range("A2") = sh1.Cells(n, "A") 'Sheet2のA2にSheet1のA列n行目のデータ sh2.Range("B2") = sh1.Cells(n, "C") 'Sheet2のB2にSheet1のC列n行目のデータ sh2.Range("C2") = sh1.Cells(n, "E") 'Sheet2のC2にSheet1のE列n行目のデータ sh2.PrintOut 'Sheet2を印刷する Next '繰り返す End Sub
関連するQ&A
- エクセルデータのこういうデータは直せますか?
ある友人にデータの打ち込みをたのんだのですが。 もらったデータがA1縦列のみにしかなく。 全部A1列に繋がっているのですが。 A1 氏名:あいうえお 住所:あいうえお 電話番号:あいうえお 氏名:かきくけこ 住所;かきくけこ 電話番号かきくけこ ・ ・ ・ となっているのですが。 なんせデータの量がおおくて。 このデータをなにかして。 氏名 | 住所 | 電話番号| あいうえお|あいうえお|あいうえお| かきくけこ|かきくけこ|かきくけこ| みたいに整理できませんかね? 誰かたすけてください。 おねがいします。
- ベストアンサー
- オフィス系ソフト
- EXCEL データをレコード化するには
Excelのデータについて教えてください 1枚目のシートに 管理番号:氏名:住所:電話番号の4つのデータがそれぞれ別のセルに入ってるデータが100件あります。 (Aの列:管理番号 Bの列:名前 Cの列:氏名 Dの列:電話番号) これを、2枚目のシートで利用したいのですが、 Aの列の管理番号を入力したら、その列のデータが表示されるように したいです。Wordの差込のような感じです。 =(Sheet1!$B3)これだと、1つのデータしか出ませんよね。 すべてのデータの送り状を作成したいと思っています。 VBAとかでないとできないのでしょうか。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- 教えて!エクセルでの印刷マクロ
シート1に下のようなデータベースがあります。 受付番号 氏名 〒 住所 1 2 3 データを1から順に入力して、入力内容が日によって違いがあるのですが、入力した分だけ印刷できるマクロがわかりません。 前日、1から15まで入力して印刷、今日は16から50まで入力して、その分(16~50まで)を印刷(前日印刷した分は印刷しない)、次の日は50件入力(印刷は51~100まで)となるようなマクロです。 どなたか、ご教授くださいませ。
- ベストアンサー
- オフィス系ソフト
- エクセル2007 データ抽出(関数)について
教えてください。エクセルシートにて郵便番号と住所が重複しているデータを抽出したいのです。 例)ある顧客の情報として、シート1のA列に、1から10までの新規顧客の氏名、B列には生年月日が入力されています。C列,D列は空白で、E列には全ての顧客(新規顧客を含みます)の氏名、F列には生年月日、G列には郵便番号、H列には住所が入力されています。このふたつの情報の中から、新規顧客データと全ての顧客データの氏名、生年月日が重複している顧客のみ、C列にその郵便番号、D列に住所を表示させたいのです。 OSはXP エクセル2007です。 困っています。よろしくお願いします。
- ベストアンサー
- Windows XP
- excelでマクロを使用した連続印刷について
A2セルから通し番号、氏名、住所等のデータが入力されている「データ」シートがあり、 VLOOKUPを使用してB3セルに「データ」シートのA列にある「通し番号」を 入力すると氏名・住所等が反映される「印刷」シートがあります。 例えば「データ」シートのC列(住所)に「東京都」という文字列が 含まれている宛名のみを連続で印刷したい場合、 どのようなマクロになりますでしょうか? (マクロ内に「東京都」と指定する方法と、 シート内の特定セルに入力した文字列で指定する方法が ありますでしょうか?) wordでの差し込み印刷や、宛名ソフト等の使用は考えておりません。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- 選択したデータだけ印刷するには?
例えばシート1のB列に顧客番号・C列に住所・D列に氏名のデータが入っていて、選択した顧客番号のデータのみを、タッグシールに印刷したいのです。 印刷したいデータの選択は、A列に顧客番号の横にチェックを直接入力します。 タッグシールはA4に10枚あります。 初心者で、本を読んでみたりしたのですが、どうしても分かりません。 具体的に教えていただくと助かります。よろしくおねがいします。
- ベストアンサー
- Visual Basic
- エクセルでデータの突き合わせ
新しい職場で各々が管理しているデータを統一しようと思っています。 sheetA 住所・氏名・氏名カナ・生年月日・台帳番号・個人データ *住所は住居表示変更前のものあり *氏名カナは半角・全角・スペースの有無がいろいろ sheetB 住所・氏名・氏名カナ・生年月日・個人データ *住所・氏名は旧字のものあり *氏名カナは半角のみ sheetA・Bとも約3000件あります。 データの順序はそれぞれ違います。 sheetAにあり、sheetBにはない。またその逆でsheetBにはあるがsheetAにはない人もいます。 まず、sheetA・Bとも住所・氏名・生年月日が一致するデータを抽出したい そして、sheetAにありBにないデータの一覧、sheetBにありAにないデータの一覧を作りたいのですが、関数を使用して作成することはできますでしょうか。 関数にあまり詳しくないので、細かく教えていただくとありがたいです。
- 締切済み
- その他MS Office製品
- エクセルのデータ入れ替え
エクセルに 1氏名 2電話番号 3住所 4氏名 5電話番号 6住所 と入力されたデータがあります。 これを、 A氏名 B電話番号 C住所 氏名 電話番号 住所 と変換させたいのですが、どうしたら簡単に手っ取り早く 変換出来るでしょうか? かなりの数があるので、手間の掛からない方法を教えて下さい。 また、これを使って印刷をするので、それを考慮した方法で お願いします。
- 締切済み
- オフィス系ソフト
- エクセルで印刷
エクセルのシートに名簿があります。 A列に番号(1~70)、B列に住所、C列に氏名・・G列まであります。 シート2の指定したセル(c3.c5・・)にシート1の指定した 番号の住所、氏名を印刷したいのです。 同じシートでも構いません。 シート上側に印刷フォーム、下側に名簿を移します。 番号指定、印刷、1枚づつの印刷でも構いません。 過去の質問を見たのですが難しくて理解できません。 PC初心者ですが宜しくお願いします。
- ベストアンサー
- Windows XP
- EXCELの住所録を打ち出したい。
SHEET1に250件ぐらい郵便番号、住所、氏名だけを入力しています。その住所録データをA4の紙を4分の1の大きさに分けて、要するに1枚に4つの住所データを全部、打ち出したいのです。それをはさみで切って、透明窓の封筒に入れ、送りたいのですが、何かいい方法はないでしょうか?意味がお分かりでしょうか?わかりづらかったら、補足もしますので宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
有難う御座いました。 マルチポストのつもりはなかったのですが… お気に触られたのであれば、申し訳ありませんでした。 早速がんばってみます。