I used the code that was responded with in the link I have attached below and I am having some problems can you please help me?
VBA Dialog box to select range in different workbook
When I click on the refedit box to be able to select the range I want to use it is hanging up and I'm getting a sound when I click saying that there is another window open somewhere with higher priority but i cannot find it.
Basically, what I'm trying to do is copy the specified columns from one workbook and paste them into a sheet on my original workbook. I know that my "copyButton_Click()" coding isn't right also but I cannot get that far into the debugging to fix it. Here is what I have:
MODULE 1:
Sub extractData()
Dim FName As Variant
Dim wb As Workbook
Dim destSheet As String
'
Application.ScreenUpdating = False
destSheet = "NewData"
'
'Selects and clears data
Sheets(destSheet).Select
Range("A2:I12000").Select
Selection.delete Shift:=xlUp
Range("A2").Select
'
'Prompts user to select updated ILP file to copy data from:
FName = Application.GetOpenFilename(filefilter:="Excel Files (*.xls;*.xlsx;*.xlsm), *.xls;*.xlsx;*.xlsm")
If FName <> False Then
Set wb = Workbooks.Open(FName)
'
ExtractCompareUserForm.Show vbModeless
'
End If
Application.ScreenUpdating = True
End Sub
USERFORM CODE:
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
'~~> This lets you choose the relevant range
Private Sub RefEdit1_Change()
Label1.Caption = ""
If RefEdit1.Value <> "" Then _
Label1.Caption = "[" & ComboBox1 & "]" & RefEdit1
End Sub
Private Sub copyButton_Click()
Dim addr As String
'
addr = RefEdit1.Value
'
'Copy Data:
UserForm1.addr = Selection.Address
addr.Copy
End Sub
Private Sub PasteButton_Click()
Dim destSheet As String
'
Workbooks(2).Close SaveChanges:=False
'
' Now, paste to working workbook:
Sheets("NewData").Activate
Range("B2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Unload Me
'
Call CopyData
End Sub
Here is where it's hanging up and doesn't let me click on anything.
You have deactivate the screen updating, you need to reactivate it before showing your UserForm, at the end of Sub extractData()
:
You have :
ExtractCompareUserForm.Show vbModeless
End If
Application.ScreenUpdating = True
End Sub
Switch to :
Application.ScreenUpdating = True
ExtractCompareUserForm.Show vbModal
End If
End Sub