Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2255 / 13646 ツリー ←次へ | 前へ→

【69120】連続印刷したい りょう 11/5/18(水) 23:57 質問[未読]
【69121】Re:連続印刷したい ホンジャマイカ 11/5/19(木) 0:29 発言[未読]
【69123】Re:連続印刷したい UO3 11/5/19(木) 10:18 回答[未読]

【69120】連続印刷したい
質問  りょう  - 11/5/18(水) 23:57 -

引用なし
パスワード
   はじめまして。
皆様のお知恵を借りたく質問させて頂きます。どうぞよろしくお願い致します。

現在、[Sheet1]に基本データ「管理番号、お客様番号、住所、氏名、担当者」が入力されています。[Sheet2]に「VLOOKUP」を使いお客様管理簿を作成しました。
そこで、担当者別に管理番号順で連続して印刷作業ができないかと考えています。

現在は手入力で管理番号を+1づつし、下記のコードで担当者が適切かを判断し1枚づつ印刷しています。
自動で管理番号のセルを+1加算し、担当者の間違いがなければ担当者が代わるまで連続印刷の処理ができないものでしょうか?

Sub 単票印刷()
If Range("B5") <> "OK" Then
MsgBox "担当者不適切です"
Else
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End If
End Sub

よろしくお願い致します。

【69121】Re:連続印刷したい
発言  ホンジャマイカ  - 11/5/19(木) 0:29 -

引用なし
パスワード
   ワードで差込印刷、ではだめなのでしょうか?

エクセルVBAでのサンプルです。

日経PC21 - 「エクセルだけで、差し込み印刷を実現」サンプルファイル
http://pc.nikkeibp.co.jp/pc21/sample/200407/k_vba.shtml

【69123】Re:連続印刷したい
回答  UO3  - 11/5/19(木) 10:18 -

引用なし
パスワード
   ▼りょう さん:

こんにちは

Wordは不得意なのでExcelだけで処理してみました。

Sub Sample()
  Dim v As Variant
  Dim f As Long, t As Long, y As Long
  Dim sh As Worksheet
  
  Set sh = Sheets("Sheet2")
  
  With Sheets("Sheet1")
    v = .Range("A1", .Range("A" & .Rows.Count).End(xlUp)).Value
  
    f = WorksheetFunction.Min(v)
    t = WorksheetFunction.Max(v)
    
    For y = f To t
      If IsNumeric(Application.Match(y, v, 0)) Then
        'ここで、Sheet2で現在、管理番号を入力しているセルに
        ' y をセット。
        '例 sh.Range("B4").Value = y
        sh.PrintOut Copies:=1, Collate:=True
      End If
    Next
  
  End With
  
  Set sh = Nothing
  
End Sub

2255 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free