• 締切済み

EXCELで以下のものを作りたいです。

EXCELで以下のものを作りたいです。 教えてください。 作ったフォームに従業員番号と氏名を自動に表示させて、(1フォームに一名) それを一度印刷ボタン押すだけで全従業員分印刷させる方法を教えてください。 (従業員番号と氏名一覧シートは作成してあります)

みんなの回答

  • seastar3
  • ベストアンサー率69% (99/142)
回答No.1

シート1の2行目から従業員番号と名前が用意されているとして、シート1のE1セルを範囲名"行カウント"と指定して2行目から最終行まで1ずつ加算していきます。 またUserForm1上に従業員番号用のテキストボックスTextBox1と名前用のテキストボックスTextBox2を設置します。そこまで準備しておいてコマンドボタンをシート1上に作り、内部のコードを以下のようにします。 Private Sub CommandButton1_Click() Dim 行カウント Set 行カウント = Range(Sheets(1).Cells(1, 5), Sheets(1).Cells(1, 5)) 行カウント = 2 Do Until Sheets(1).Cells(行カウント, 1) = "" UserForm1.TextBox1.Text = Sheets(1).Cells(行カウント, 1) UserForm1.TextBox2.Text = Sheets(1).Cells(行カウント, 2) MsgBox Sheets(1).Cells(行カウント, 1) & vbCr & Sheets(1).Cells(行カウント, 2) UserForm1.PrintForm ' MsgBox Sheets(1).Cells(行カウント, 1) & vbCr & Sheets(1).Cells(行カウント, 2) 行カウント = 行カウント + 1 Loop End Sub 印刷したい項目数や行カウントの位置に関して要望があるかもしれませんので、じっくり解析してふさわしい変更をしてみて下さい。

関連するQ&A