アプリ版:「スタンプのみでお礼する」機能のリリースについて

次のような名簿があるとします。
A列    B列    
通し番号 名前    
1    阿部
2    佐々木
空白   空白
4    木村
5    田辺
空白   空白
空白   空白
8    三浦
通し番号が入力されていない場合は、名前も表示されない様になっています。
セルC1に通し番号を順々に表示(マクロで指定)
セルC2にその番号の名前を参照表示←個人票として印刷
番号があれば(名前が表示されれば)印刷
としたいです。

個人票を連続印刷したいのですが、空白を飛ばして、
番号が入っている人だけを印刷、というマクロがどうしても組めません。
一つ一つ、番号が入っていれば名前を印刷のようなマクロを延々と
組むことは出来るのですが、名簿が長大なのでそれは避けたいです。
よろしくお願いします。

A 回答 (2件)

現状のコードを提示していただければ回答が簡単なのですが


もし、For~Next文で繰り返しの処理をなされているのであれば
途中に
For i=XX To XXX
If Range("A" & i).Value="" Then Next
現状のコード
Next
とかいれて
もし、A列が空白ならば、以下のコードを実行せずに次に移る
様なコードを記述します。
    • good
    • 2
この回答へのお礼

なるほどー。結構シンプルなんですね。ちょっとやってみたいと思います。ありがとうございました!!

お礼日時:2010/03/14 20:00

>個人票を連続印刷したい



しばしば,理屈では上手く行きますが実際にはうまく印刷できない場合が出てきます。簡単に言うと,印刷を出せる前にマクロが次のデータに書き換えてしまうような状況です。
(まぁ,状況がわかれば待てを入れて回避したりとかもありますが)

という訳で確実な方法として
シート1:リスト
シート2:印刷のひな形

sub macro1()
dim h as range
for each h in worksheets("Sheet1").range("A2:A" & worksheets("Sheet1").range("A65536").end(xlup).row)

if h <> "" then
worksheets("Sheet2").copy after:=worksheets(worksheets.count)
activesheet.range("C1") = h
activesheet.range("C2") = h.offset(0, 1)
end if
next
end sub

とかなんとかの具合でひな形の複製にデータを埋めて必要数作成後,作業グループにして一気に印刷に出してみてください。
    • good
    • 0
この回答へのお礼

なるほど~、シートを増やすのは検討してなかったです。
いろいろな角度から考えることが出来ました。
ありがとうございました!!

お礼日時:2010/03/14 20:01

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