異なるワークブックにある可能性のある範囲をユーザが選択できるようにします。VBA別のワークブックの範囲を選択するダイアログボックス
私は、入力帳( ""、タイプ:= 8)でこれを実行しようとしましたが、ブック内のデータを選択することはできますが、別のブックで範囲を選択することはできません。
このタスクを実行するためのダイアログボックスが必要です。
異なるワークブックにある可能性のある範囲をユーザが選択できるようにします。VBA別のワークブックの範囲を選択するダイアログボックス
私は、入力帳( ""、タイプ:= 8)でこれを実行しようとしましたが、ブック内のデータを選択することはできますが、別のブックで範囲を選択することはできません。
このタスクを実行するためのダイアログボックスが必要です。
私はあなた
は、次のユーザーフォーム
にこのコードを貼り付けUserform
を作成し、
ComboBox
を置き、
RefEdit
コントロールと
Label
のために、私は例を作成し、無料だったので、
Private Sub UserForm_Initialize()
Dim wb As Workbook
'~~> Get the name of all the workbooks in the combobox
For Each wb In Application.Workbooks
ComboBox1.AddItem wb.Name
Next
ComboBox1 = ActiveWorkbook.Name
End Sub
'~~> This lets you toggle between all open workbooks
Private Sub Combobox1_Change()
If ComboBox1 <> "" Then Application.Workbooks(ComboBox1.Text).Activate
Label1.Caption = "": RefEdit1 = ""
End Sub
'~~> And this lets you choose the relevant range
Private Sub RefEdit1_Change()
Label1.Caption = ""
If RefEdit1.Value <> "" Then _
Label1.Caption = "[" & ComboBox1 & "]" & RefEdit1
End Sub
これはあなたが得るものですユーザーフォームを実行
ニース、シッダース。 –
コピー先のブック名にスペースが含まれている場合、またはコピー先のシートにスペースが含まれている場合(Excel 2007以上)は失敗します。 refEditの値を "!"の周りに分割し、RefEditでそれらを追加した場合はシート名の前後に引用符を取り除き、[[ブック名]シート名]として参照を設定する必要があります。 – personne3000
ユーザーフォームでRefEditコントロールを使用してください。しかし、RefEdit Controlを使用してExcelがハングする他のブックから範囲を取得する際には、非常に注意する必要があります。これは非常に知られていないものなので、あなたが例をしたい場合私に教えてください... –