過去ログ

                                Page     857
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼スマートにしたい  初心者 03/3/10(月) 10:54
   ┗Re:スマートにしたい  ポンタ 03/3/10(月) 13:31
      ┗Re:スマートにしたい  初心者 03/3/10(月) 15:43

 ───────────────────────────────────────
 ■題名 : スマートにしたい
 ■名前 : 初心者
 ■日付 : 03/3/10(月) 10:54
 -------------------------------------------------------------------------
   下記のような記述をスマートにしたいのですが、初心者の私にはとても出来ません。
どなたか教えていただけますでしょうか?
宜しくお願い致します^^


Sub 一枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("a2").Copy Destination:=Worksheets(form).Range("b1")
    Range("b2").Copy Destination:=Worksheets(form).Range("f1")
    Range("c2").Copy Destination:=Worksheets(form).Range("j1")
    Range("a3").Copy Destination:=Worksheets(form).Range("b3")
    Range("b3").Copy Destination:=Worksheets(form).Range("f3")
    Range("c3").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range(hani).PrintOut
    
End Sub

Sub 二枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("e2").Copy Destination:=Worksheets(form).Range("b1")
    Range("f2").Copy Destination:=Worksheets(form).Range("f1")
    Range("g2").Copy Destination:=Worksheets(form).Range("j1")
    Range("e3").Copy Destination:=Worksheets(form).Range("b3")
    Range("f3").Copy Destination:=Worksheets(form).Range("f3")
    Range("g3").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range(hani).PrintOut
End Sub

Sub 三枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("i2").Copy Destination:=Worksheets(form).Range("b1")
    Range("j2").Copy Destination:=Worksheets(form).Range("f1")
    Range("k2").Copy Destination:=Worksheets(form).Range("j1")
    Range("i3").Copy Destination:=Worksheets(form).Range("b3")
    Range("j3").Copy Destination:=Worksheets(form).Range("f3")
    Range("k3").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 四枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("m2").Copy Destination:=Worksheets(form).Range("b1")
    Range("n2").Copy Destination:=Worksheets(form).Range("f1")
    Range("o2").Copy Destination:=Worksheets(form).Range("j1")
    Range("m3").Copy Destination:=Worksheets(form).Range("b3")
    Range("n3").Copy Destination:=Worksheets(form).Range("f3")
    Range("o3").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 五枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("q5").Copy Destination:=Worksheets(form).Range("b1")
    Range("r5").Copy Destination:=Worksheets(form).Range("f1")
    Range("s5").Copy Destination:=Worksheets(form).Range("j1")
    Range("q6").Copy Destination:=Worksheets(form).Range("b3")
    Range("r6").Copy Destination:=Worksheets(form).Range("f3")
    Range("s6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 六枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("a5").Copy Destination:=Worksheets(form).Range("b1")
    Range("b5").Copy Destination:=Worksheets(form).Range("f1")
    Range("c5").Copy Destination:=Worksheets(form).Range("j1")
    Range("a6").Copy Destination:=Worksheets(form).Range("b3")
    Range("b6").Copy Destination:=Worksheets(form).Range("f3")
    Range("c6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 七枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("e5").Copy Destination:=Worksheets(form).Range("b1")
    Range("f5").Copy Destination:=Worksheets(form).Range("d1")
    Range("g5").Copy Destination:=Worksheets(form).Range("e1")
    Range("e6").Copy Destination:=Worksheets(form).Range("b3")
    Range("f6").Copy Destination:=Worksheets(form).Range("f3")
    Range("g6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 八枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("i5").Copy Destination:=Worksheets(form).Range("b1")
    Range("j5").Copy Destination:=Worksheets(form).Range("f1")
    Range("k5").Copy Destination:=Worksheets(form).Range("j1")
    Range("i6").Copy Destination:=Worksheets(form).Range("b3")
    Range("j6").Copy Destination:=Worksheets(form).Range("f3")
    Range("k6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 九枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("m5").Copy Destination:=Worksheets(form).Range("b1")
    Range("n5").Copy Destination:=Worksheets(form).Range("f1")
    Range("o5").Copy Destination:=Worksheets(form).Range("j1")
    Range("m6").Copy Destination:=Worksheets(form).Range("b3")
    Range("n6").Copy Destination:=Worksheets(form).Range("f3")
    Range("o6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
End Sub

Sub 十枚目印刷()
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  form = ("タ-23フォーム")
  hani = ("a1:m3")
    Range("q5").Copy Destination:=Worksheets(form).Range("b1")
    Range("r5").Copy Destination:=Worksheets(form).Range("f1")
    Range("s5").Copy Destination:=Worksheets(form).Range("j1")
    Range("q6").Copy Destination:=Worksheets(form).Range("b3")
    Range("r6").Copy Destination:=Worksheets(form).Range("f3")
    Range("s6").Copy Destination:=Worksheets(form).Range("j3")
      Worksheets(form).Range("a1:m3").PrintOut
 ───────────────────────────────────────  ■題名 : Re:スマートにしたい  ■名前 : ポンタ  ■日付 : 03/3/10(月) 13:31  -------------------------------------------------------------------------
   これでどうでしょう?

とりあえず、印刷はせずに、印刷プレビューをするようにしてあります。
(プリンタ用紙を無駄にしないため)

それと、
>form = ("タ-23フォーム")
は半角カタカナを含んでいたせいで、
文字化けをしたのではないですか?

そうだとしたら、

Set Ws = Worksheets("タ-23フォーム")

の部分は適切に書き直してください。

Sub 一枚目印刷()
  Call 印刷(Range("A2"))
End Sub

Sub 二枚目印刷()
  Call 印刷(Range("E2"))
End Sub

Sub 三枚目印刷()
  Call 印刷(Range("I2"))
End Sub

Sub 四枚目印刷()
  Call 印刷(Range("M2"))
End Sub

Sub 五枚目印刷()
  Call 印刷(Range("Q2"))
End Sub

Sub 六枚目印刷()
  Call 印刷(Range("A5"))
End Sub

Sub 七枚目印刷()
  Call 印刷(Range("E5"))
End Sub

Sub 八枚目印刷()
  Call 印刷(Range("I5"))
End Sub

Sub 九枚目印刷()
  Call 印刷(Range("M5"))
End Sub

Sub 十枚目印刷()
  Call 印刷(Range("Q5"))
End Sub

Sub 印刷(MyTarget As Range)
  Dim Ws As Worksheet
  Dim MyRange As Range
  Dim i As Integer, j As Integer
  Dim henji As Integer
  Dim hani As Range
  henji = MsgBox("プリンターの設定はお済ですか?", vbYesNo)
  If henji = vbNo Then Exit Sub
  Set Ws = Worksheets("タ-23フォーム")
  Set hani = Ws.Range("a1:m3")
  For i = 0 To 1
    For j = 0 To 2
      Call MyTarget.Offset(i, j).Copy(Ws.Cells(i * 2 + 1, j * 4 + 2))
    Next
  Next
  'hani.PrintOut
  hani.PrintPreview
End Sub
 ───────────────────────────────────────  ■題名 : Re:スマートにしたい  ■名前 : 初心者  ■日付 : 03/3/10(月) 15:43  -------------------------------------------------------------------------
   誠に有難う御座いました^^
オフセットでやればいいのか〜!!
勉強になりました(本とはよく分かってない^^)

又何かありましたら宜しくお願い致します。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 857