-1
セルをE5で値を変更すると、自動的に特定のフィールドを塗りつぶすシート1のシートを他のシート上のテーブルから検索して返します。 シートテーブル)。複数の値に基づいてシートを印刷するExcelマクロ
私の目標は、今sheetTable上の列の値の範囲を選択し、それらの一つ一つがシート1にE5をセルに割り当て、それぞれを印刷することです。
それでは、私は値を持つ3つのセルを選択しましょう:45、50と66、私はマクロを実行すると、それはそれはE5と印刷次の使用例は、シート1のセルに50を割り当てます、E5および印刷次の使用例は、シート1をセルに45を割り当てますであり、最後にセルE5に66を割り当て、シート1を印刷します。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Dim shape As Excel.shape
' The variable KeyCells contains the cells that will
' cause an alert when they are changed.
Set KeyCells = Range("e5")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
For Each shape In ActiveSheet.Shapes
shape.Delete
Next
InsertPictureInRange Range("f2").Value & Range("e5").Value & ".jpg", _
Range("c9")
InsertPictureInRange Range("f2").Value & Range("e5").Value & "_1.jpg", _
Range("i9")
If Range("e5").Value = "" Then Exit Sub
End If
End Sub
ありがとうございます。それは少し助けたが、働いていない。これは同じシートでのみ機能します。私が必要とするのは、他のシート(テーブルがあるシート)の範囲を選択することです。また、私は、pdfにsheet1を印刷し、pdfファイルの名前をE5の値で指定するコードが必要です。したがって、テーブルシート上の3つのセルを値34,44,55で選択すると、次のファイルが作成されます。34.pdf、44.pdf、55.pdf –
ああ、わかります。明確にしていただきありがとうございます。私が避けている 'SendKeys'を使う以外に、ExcelからPDFファイルを保存する方法があるかどうかはわかりません。私は自分の答えを更新し、それぞれの価値についての印刷ダイアログをどのように開くのかを示します。そこから、ファイルの場所とシートの名前を手動で入力する必要があります。完全な答えではない、私は知っている。私はExcelからファイルにPDFを保存する方法を探し続けます。 –