|
こんにちは。かみちゃん です。
>請求書No.で A001(自分で文字入力)から A005(自分で文字入力)までと
>指定して、印刷できますでしょうか?
仕事で同様のことをしていますが、
こんな感じでできると思います。
こちらでサンプルファイルを作って動作確認してあります。
その都度、請求書番号に応じたデータを取得して反映させますので、関数式も一切必要ありません。
Sub Macro1()
Dim MyR As Range, c As Range, c2 As Range
Sheets("Sheet2").Select
Set MyR = Range("E4:E8")
' Set MyR = Application.InputBox( _
' prompt:="印刷したいセルを選択してください。", Type:=8)
For Each c In MyR
If c.Value <> "" Then
With Sheets("Sheet1").Columns("A").Cells
Set c2 = .Find(c.Value, LookIn:=xlValues, LookAt:=xlWhole)
If Not c2 Is Nothing Then
With Sheets("Sheet2")
' Range("D1").Value = c2.Value
' Range("A1").Value = c2.Offset(, 1).Value
' Range("B3").Value = c2.Offset(, 2).Value
' Range("C3").Value = c2.Offset(, 3).Value
Union(Range("D1"), Range("A1"), Range("B3"), Range("C3")).Value = _
Array(c2.Value, c2.Offset(, 1).Value, c2.Offset(, 2).Value, c2.Offset(, 3).Value)
End With
'〜 ここに印刷処理のマクロを記述 〜
Else
MsgBox "請求書番号 " & c.Value & " のデータはありません"
End If
End With
End If
Next
MsgBox "印刷終了"
End Sub
>E列にシートに入力する(実際は印刷しない個所です)
こういう大事な情報は、一番最初に書きましょう!
請求書番号は、E4〜E8に記述してあるものとします。
|
|