ワークシートに、他のタブ (月ごとに 1 つ) からの要約データを保持する一連の名前付き範囲があります。範囲には名前が付けられJAN / FEB / MAR
ています。私のファイルには、ある月を別の月と比較するさまざまなレポートが含まれており、これを動的にするには、ユーザーが任意の 2 か月を比較できるようにする必要があります。
レポートは、必要な月の要約データの貼り付けられた(値)バージョンを含む別のシートから実行されるため、基本的に、ユーザーが月を選択できるようにするユーザーフォームを備えたマクロが必要であり、その範囲を見つけてコピーしますレポートを作成するシートに貼り付けます。シート名に基づいて同様のことを行うことができましたが(以下のコードを参照)、名前付き範囲に対して何も機能しません。
喜んで助けていただければ幸いです。私はこれについて独学のアマチュアです。
Private Sub CommandButton1_Click()
Dim i As Integer, sht As String
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
sht = ListBox1.List(i)
End If
Next i
Sheets(sht).Range("A4:C15").Copy
Sheets("Sheet1").Select.Range("N1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End
End Sub
Private Sub CommandButton2_Click()
Unload UserForm2
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ListBox1.AddItem (ws.Name)
Next ws
End Sub