Search for row in closed workbook, then copy Specific data cells from a row (Not the entire row) into my...
up vote
0
down vote
favorite
I'm new to the this site and new to VBA in general, i'm looking for any help possible? if possible!?
I am trying to copy cell data from one sheet to another based on a reference match.
Basically I want to search for a row in a closed workbook using a reference number, then copy certain cells from that row (not entire row) in certain cells in my open workbook..
I assume a click button would be the best method for this?
so insert reference into open workbook, click button and pull data from closed workbook.. (sounds so easy on paper! ha)
for example.
search ref No.- 123456
Search this ref no. for a particular row within closed workbook "Weekly stats" then copy only cells - D2, E2, F2, G2 & S2 from that particular row into currently opened workbook.
is this possible? would save me so much time!
any help appreciated!
Thanks,
excel vba
New contributor
add a comment |
up vote
0
down vote
favorite
I'm new to the this site and new to VBA in general, i'm looking for any help possible? if possible!?
I am trying to copy cell data from one sheet to another based on a reference match.
Basically I want to search for a row in a closed workbook using a reference number, then copy certain cells from that row (not entire row) in certain cells in my open workbook..
I assume a click button would be the best method for this?
so insert reference into open workbook, click button and pull data from closed workbook.. (sounds so easy on paper! ha)
for example.
search ref No.- 123456
Search this ref no. for a particular row within closed workbook "Weekly stats" then copy only cells - D2, E2, F2, G2 & S2 from that particular row into currently opened workbook.
is this possible? would save me so much time!
any help appreciated!
Thanks,
excel vba
New contributor
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm new to the this site and new to VBA in general, i'm looking for any help possible? if possible!?
I am trying to copy cell data from one sheet to another based on a reference match.
Basically I want to search for a row in a closed workbook using a reference number, then copy certain cells from that row (not entire row) in certain cells in my open workbook..
I assume a click button would be the best method for this?
so insert reference into open workbook, click button and pull data from closed workbook.. (sounds so easy on paper! ha)
for example.
search ref No.- 123456
Search this ref no. for a particular row within closed workbook "Weekly stats" then copy only cells - D2, E2, F2, G2 & S2 from that particular row into currently opened workbook.
is this possible? would save me so much time!
any help appreciated!
Thanks,
excel vba
New contributor
I'm new to the this site and new to VBA in general, i'm looking for any help possible? if possible!?
I am trying to copy cell data from one sheet to another based on a reference match.
Basically I want to search for a row in a closed workbook using a reference number, then copy certain cells from that row (not entire row) in certain cells in my open workbook..
I assume a click button would be the best method for this?
so insert reference into open workbook, click button and pull data from closed workbook.. (sounds so easy on paper! ha)
for example.
search ref No.- 123456
Search this ref no. for a particular row within closed workbook "Weekly stats" then copy only cells - D2, E2, F2, G2 & S2 from that particular row into currently opened workbook.
is this possible? would save me so much time!
any help appreciated!
Thanks,
excel vba
excel vba
New contributor
New contributor
New contributor
asked Nov 8 at 9:19
Drew.M
1
1
New contributor
New contributor
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25
add a comment |
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
Paste this in your sheet code, adjust input cell & path.
Test by changing value in cell A1.
Some alternatives included for experimenting.
Private Sub Worksheet_Change(ByVal Target As Range)
'Input cell
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value <> "" Then
Application.ScreenUpdating = False
'Row selection by target value
rwnum = Target.Value
Dim wb As Workbook
''For user selected workbook
'Dim dP As String
'dP = Environ$("USERPROFILE") & "" & "Downloads": ChDrive "C:"
'ChDir dP
'Dim fNP As Variant
'fNP = Application.GetOpenFilename(FileFilter:="Excel Files (*.XLS), *.XLS", Title:="Select file")
'Set wb = Workbooks.Open(fNP)
''For static workbook with static path
'Set wb = Workbooks.Open("C:UsersUserNameDownloadsWeekly stats.xls")
''For static workbook with semi dynamical path
Set wb = Workbooks.Open(Environ$("USERPROFILE") & "" & "Downloads" & "Weekly stats.xls")
'C:UsersUserName Downloads Weekly stats.xls
Dim rng As Range
Set rng = wb.ActiveSheet.Range("A1").CurrentRegion
''Static columns
c1 = 1: c2 = 2: c3 = 3: c4 = 4: c5 = 16
''Dynamic columns
'With rng
' c1 = WorksheetFunction.Match("Example header text 1", .Rows(1), 0)
' c2 = WorksheetFunction.Match("Example header text 2", .Rows(1), 0)
' c3 = WorksheetFunction.Match("Example header text 3", .Rows(1), 0)
' c4 = WorksheetFunction.Match("Example header text 4", .Rows(1), 0)
' c5 = WorksheetFunction.Match("Example header text 5", .Rows(1), 0)
'End With
Dim Mrng As Range
''Static destination
'Set Mrng = Me.Range("D2:S2")
''Same row destination
'Set Mrng = Me.Cells(rwnum, 4).Resize(, 16)
''Next destination
Set Mrng = Me.Range("D1048576").End(xlUp).Offset(1).Resize(, 16)
With Mrng
.Cells(c1).Value = rng(rwnum, c1)
.Cells(c2).Value = rng(rwnum, c2)
.Cells(c3).Value = rng(rwnum, c3)
.Cells(c4).Value = rng(rwnum, c4)
.Cells(c5).Value = rng(rwnum, c5)
End With
wb.Close savechanges:=False
Target.Select
Application.ScreenUpdating = True
End If
End If
End Sub
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Paste this in your sheet code, adjust input cell & path.
Test by changing value in cell A1.
Some alternatives included for experimenting.
Private Sub Worksheet_Change(ByVal Target As Range)
'Input cell
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value <> "" Then
Application.ScreenUpdating = False
'Row selection by target value
rwnum = Target.Value
Dim wb As Workbook
''For user selected workbook
'Dim dP As String
'dP = Environ$("USERPROFILE") & "" & "Downloads": ChDrive "C:"
'ChDir dP
'Dim fNP As Variant
'fNP = Application.GetOpenFilename(FileFilter:="Excel Files (*.XLS), *.XLS", Title:="Select file")
'Set wb = Workbooks.Open(fNP)
''For static workbook with static path
'Set wb = Workbooks.Open("C:UsersUserNameDownloadsWeekly stats.xls")
''For static workbook with semi dynamical path
Set wb = Workbooks.Open(Environ$("USERPROFILE") & "" & "Downloads" & "Weekly stats.xls")
'C:UsersUserName Downloads Weekly stats.xls
Dim rng As Range
Set rng = wb.ActiveSheet.Range("A1").CurrentRegion
''Static columns
c1 = 1: c2 = 2: c3 = 3: c4 = 4: c5 = 16
''Dynamic columns
'With rng
' c1 = WorksheetFunction.Match("Example header text 1", .Rows(1), 0)
' c2 = WorksheetFunction.Match("Example header text 2", .Rows(1), 0)
' c3 = WorksheetFunction.Match("Example header text 3", .Rows(1), 0)
' c4 = WorksheetFunction.Match("Example header text 4", .Rows(1), 0)
' c5 = WorksheetFunction.Match("Example header text 5", .Rows(1), 0)
'End With
Dim Mrng As Range
''Static destination
'Set Mrng = Me.Range("D2:S2")
''Same row destination
'Set Mrng = Me.Cells(rwnum, 4).Resize(, 16)
''Next destination
Set Mrng = Me.Range("D1048576").End(xlUp).Offset(1).Resize(, 16)
With Mrng
.Cells(c1).Value = rng(rwnum, c1)
.Cells(c2).Value = rng(rwnum, c2)
.Cells(c3).Value = rng(rwnum, c3)
.Cells(c4).Value = rng(rwnum, c4)
.Cells(c5).Value = rng(rwnum, c5)
End With
wb.Close savechanges:=False
Target.Select
Application.ScreenUpdating = True
End If
End If
End Sub
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
add a comment |
up vote
0
down vote
Paste this in your sheet code, adjust input cell & path.
Test by changing value in cell A1.
Some alternatives included for experimenting.
Private Sub Worksheet_Change(ByVal Target As Range)
'Input cell
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value <> "" Then
Application.ScreenUpdating = False
'Row selection by target value
rwnum = Target.Value
Dim wb As Workbook
''For user selected workbook
'Dim dP As String
'dP = Environ$("USERPROFILE") & "" & "Downloads": ChDrive "C:"
'ChDir dP
'Dim fNP As Variant
'fNP = Application.GetOpenFilename(FileFilter:="Excel Files (*.XLS), *.XLS", Title:="Select file")
'Set wb = Workbooks.Open(fNP)
''For static workbook with static path
'Set wb = Workbooks.Open("C:UsersUserNameDownloadsWeekly stats.xls")
''For static workbook with semi dynamical path
Set wb = Workbooks.Open(Environ$("USERPROFILE") & "" & "Downloads" & "Weekly stats.xls")
'C:UsersUserName Downloads Weekly stats.xls
Dim rng As Range
Set rng = wb.ActiveSheet.Range("A1").CurrentRegion
''Static columns
c1 = 1: c2 = 2: c3 = 3: c4 = 4: c5 = 16
''Dynamic columns
'With rng
' c1 = WorksheetFunction.Match("Example header text 1", .Rows(1), 0)
' c2 = WorksheetFunction.Match("Example header text 2", .Rows(1), 0)
' c3 = WorksheetFunction.Match("Example header text 3", .Rows(1), 0)
' c4 = WorksheetFunction.Match("Example header text 4", .Rows(1), 0)
' c5 = WorksheetFunction.Match("Example header text 5", .Rows(1), 0)
'End With
Dim Mrng As Range
''Static destination
'Set Mrng = Me.Range("D2:S2")
''Same row destination
'Set Mrng = Me.Cells(rwnum, 4).Resize(, 16)
''Next destination
Set Mrng = Me.Range("D1048576").End(xlUp).Offset(1).Resize(, 16)
With Mrng
.Cells(c1).Value = rng(rwnum, c1)
.Cells(c2).Value = rng(rwnum, c2)
.Cells(c3).Value = rng(rwnum, c3)
.Cells(c4).Value = rng(rwnum, c4)
.Cells(c5).Value = rng(rwnum, c5)
End With
wb.Close savechanges:=False
Target.Select
Application.ScreenUpdating = True
End If
End If
End Sub
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
add a comment |
up vote
0
down vote
up vote
0
down vote
Paste this in your sheet code, adjust input cell & path.
Test by changing value in cell A1.
Some alternatives included for experimenting.
Private Sub Worksheet_Change(ByVal Target As Range)
'Input cell
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value <> "" Then
Application.ScreenUpdating = False
'Row selection by target value
rwnum = Target.Value
Dim wb As Workbook
''For user selected workbook
'Dim dP As String
'dP = Environ$("USERPROFILE") & "" & "Downloads": ChDrive "C:"
'ChDir dP
'Dim fNP As Variant
'fNP = Application.GetOpenFilename(FileFilter:="Excel Files (*.XLS), *.XLS", Title:="Select file")
'Set wb = Workbooks.Open(fNP)
''For static workbook with static path
'Set wb = Workbooks.Open("C:UsersUserNameDownloadsWeekly stats.xls")
''For static workbook with semi dynamical path
Set wb = Workbooks.Open(Environ$("USERPROFILE") & "" & "Downloads" & "Weekly stats.xls")
'C:UsersUserName Downloads Weekly stats.xls
Dim rng As Range
Set rng = wb.ActiveSheet.Range("A1").CurrentRegion
''Static columns
c1 = 1: c2 = 2: c3 = 3: c4 = 4: c5 = 16
''Dynamic columns
'With rng
' c1 = WorksheetFunction.Match("Example header text 1", .Rows(1), 0)
' c2 = WorksheetFunction.Match("Example header text 2", .Rows(1), 0)
' c3 = WorksheetFunction.Match("Example header text 3", .Rows(1), 0)
' c4 = WorksheetFunction.Match("Example header text 4", .Rows(1), 0)
' c5 = WorksheetFunction.Match("Example header text 5", .Rows(1), 0)
'End With
Dim Mrng As Range
''Static destination
'Set Mrng = Me.Range("D2:S2")
''Same row destination
'Set Mrng = Me.Cells(rwnum, 4).Resize(, 16)
''Next destination
Set Mrng = Me.Range("D1048576").End(xlUp).Offset(1).Resize(, 16)
With Mrng
.Cells(c1).Value = rng(rwnum, c1)
.Cells(c2).Value = rng(rwnum, c2)
.Cells(c3).Value = rng(rwnum, c3)
.Cells(c4).Value = rng(rwnum, c4)
.Cells(c5).Value = rng(rwnum, c5)
End With
wb.Close savechanges:=False
Target.Select
Application.ScreenUpdating = True
End If
End If
End Sub
Paste this in your sheet code, adjust input cell & path.
Test by changing value in cell A1.
Some alternatives included for experimenting.
Private Sub Worksheet_Change(ByVal Target As Range)
'Input cell
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value <> "" Then
Application.ScreenUpdating = False
'Row selection by target value
rwnum = Target.Value
Dim wb As Workbook
''For user selected workbook
'Dim dP As String
'dP = Environ$("USERPROFILE") & "" & "Downloads": ChDrive "C:"
'ChDir dP
'Dim fNP As Variant
'fNP = Application.GetOpenFilename(FileFilter:="Excel Files (*.XLS), *.XLS", Title:="Select file")
'Set wb = Workbooks.Open(fNP)
''For static workbook with static path
'Set wb = Workbooks.Open("C:UsersUserNameDownloadsWeekly stats.xls")
''For static workbook with semi dynamical path
Set wb = Workbooks.Open(Environ$("USERPROFILE") & "" & "Downloads" & "Weekly stats.xls")
'C:UsersUserName Downloads Weekly stats.xls
Dim rng As Range
Set rng = wb.ActiveSheet.Range("A1").CurrentRegion
''Static columns
c1 = 1: c2 = 2: c3 = 3: c4 = 4: c5 = 16
''Dynamic columns
'With rng
' c1 = WorksheetFunction.Match("Example header text 1", .Rows(1), 0)
' c2 = WorksheetFunction.Match("Example header text 2", .Rows(1), 0)
' c3 = WorksheetFunction.Match("Example header text 3", .Rows(1), 0)
' c4 = WorksheetFunction.Match("Example header text 4", .Rows(1), 0)
' c5 = WorksheetFunction.Match("Example header text 5", .Rows(1), 0)
'End With
Dim Mrng As Range
''Static destination
'Set Mrng = Me.Range("D2:S2")
''Same row destination
'Set Mrng = Me.Cells(rwnum, 4).Resize(, 16)
''Next destination
Set Mrng = Me.Range("D1048576").End(xlUp).Offset(1).Resize(, 16)
With Mrng
.Cells(c1).Value = rng(rwnum, c1)
.Cells(c2).Value = rng(rwnum, c2)
.Cells(c3).Value = rng(rwnum, c3)
.Cells(c4).Value = rng(rwnum, c4)
.Cells(c5).Value = rng(rwnum, c5)
End With
wb.Close savechanges:=False
Target.Select
Application.ScreenUpdating = True
End If
End If
End Sub
edited Nov 8 at 14:42
answered Nov 8 at 14:28
mrkrister
335
335
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
add a comment |
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
Thanks for the reply! appreciated! I cant seem to get this to work? Could you please simplify this for me..? the closed workbook is from static path and will not move
– Drew.M
2 days ago
add a comment |
Drew.M is a new contributor. Be nice, and check out our Code of Conduct.
Drew.M is a new contributor. Be nice, and check out our Code of Conduct.
Drew.M is a new contributor. Be nice, and check out our Code of Conduct.
Drew.M is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53204689%2fsearch-for-row-in-closed-workbook-then-copy-specific-data-cells-from-a-row-not%23new-answer', 'question_page');
}
);
Post as a guest
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Welcome to Stack Overflow. Before you ask a question, there is an expectation that you show some effort to solve a specific problem. Stack Overflow is not a free code writing or resource discovery service.
– Dragonthoughts
Nov 8 at 9:25