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

excelで宝くじ様な連番をしたいです。
一枚ずつ同じものを印刷して一箇所だけ
番号加算していくような感じでやりたいのですが
1-1000番まで各紙に割り振りたいです。
ページの用に角につけるものではなくて
任意の場所にしたいのですが
http://oshiete1.goo.ne.jp/qa3198485.html
ここにも似たようなことがありましたが
VBEがうまくいきません2000だからですかね
2003を使っています、
よろしくお願いします。

A 回答 (3件)

参考にされた、スレのタイトルは


「ワードで抽選番号を振りたい。」です。
エクセルVBAについて、コマンド類、どの程度、ご存知でしょうか。
意味がわからず、モジュールをコピィしていても成長しませんよ。
ちなみに、私のパソコンで、マクロの記録、印刷、マクロの記録の終了
を操作した後に、作成されたモジュールは
Sub Macro1()
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End Sub
です。シートを1枚、プリントするという意味です。

Sub Macro1()
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Range("C4").Value=Range("C4").Value+1
End Sub
と、1行挿入することで、印刷すると、C1の値がひとつ増えます。

繰り返し処理は
For i = 1 To 100
**ここに、繰り返したい内容を記述
Next i
For ~ Nextの間を。変数 iがひとつずつ増えながら100になるまで繰り返すと云う事です。
    • good
    • 0
この回答へのお礼

よくわかりました。

できました。
ありがとうございました。

お礼日時:2008/01/11 08:42

参照されたスレは ワードでの事例のようですが。


VBA使った簡単な方法で、印刷したらセルの値が、ひとつ増える
ようにしては、いかがですか?

1、最初にボタンの作成
表示、ツールボックス、フォームでボタン選択してシートに配置
2、ボタンを右クリックして、マクロの登録、記録で、一枚印刷
  記録の終了
3、記録したマクロに手を加えます。
  ボタンを右クリックして、マクロの登録、編集で、VBエディターを開く。

仮に連番を入れたいセルがC10の場合
 End Subの前の行に、
 Range("C10").Value=Range("C10").Value+1
 と1行挿入
これで、ボタンを押して印刷するごとに数値がひとつづつ増えると思います。
うまく出来たら
Do、Loop コマンドで100回でも繰り返す事も出来るかと思います。
VBAのコマンド少しずつでも理解していくと大変、重宝する機能ができます。がんばってみてください。
    • good
    • 0
この回答へのお礼

ありがとうこざいます。
VBエディターで
Sub hhh01()
For i = 1 To 3
ActiveDocument.Tables(1).Range.Cells(1).Select
Selection.TypeText Text:="番" & Format(i, "000")
ActiveDocument.PrintOut
Next i
Range("C4").Value=Range("C4").Value+1
End Sub
実行すると実行エラー424がでて
オブジェクトが必要です。
なるのですどうしてですか教えてください。

お礼日時:2008/01/10 10:26

プリミティブな方法として「1000ページ分作ってしまえ!」というのもアリかと。



どのみち1000枚連続印刷なんて紙詰まりがあったりして大変ですから、
100枚程度づつ印刷すると思いますけど、とにかく1枚分を作ってしまい
印刷範囲をその1枚が印刷できるように調整した上で、数字の部分だけ
「=A1+1」とかにしておけば、コピーするだけで数字は増えていきます。

100ページ分作ったら印刷、後は先頭の数字部分だけを"101"とかに入れ
替えれば、次の100ページは一瞬にして出来ます。これ、分からない方法を
試行錯誤するより、案外速く出来ますよ。
    • good
    • 0
この回答へのお礼

ありがとうこざいます。
これでできると思います。

お礼日時:2008/01/10 08:43

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