ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Copy data based on month? (https://www.excelbanter.com/excel-discussion-misc-queries/226783-copy-data-based-month.html)

sophie

Copy data based on month?
 
I have a spreadsheet(sheet1) that data is inserted throughout the year. I
need a formula or vb code so that by entering a month in cell A1, it will
copy all entries in that month and paste it onto another sheet(sheet2).

Data col= A to E (Col A= date)

Thank you

--
Sophie

Gary''s Student

Copy data based on month?
 
Enter the following event macro in the worksheet code area:

Private Sub Worksheet_Change(ByVal Target As Range)
Set a1 = Range("A1")
If Intersect(Target, a1) Is Nothing Then Exit Sub
Application.EnableEvents = False
Dim s1 As Worksheet, s2 As Worksheet
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
s2.Cells.Clear
k = 1
n = Cells(Rows.Count, "A").End(xlUp).Row
v = a1.Value
For i = 1 To n
If Month(Cells(i, 1).Value) = v Then
Cells(i, 1).EntireRow.Copy s2.Cells(k, 1)
k = k + 1
End If
Next
Application.EnableEvents = True
End Sub

After the installation, type a month (as a number) in A1 (4 for March) and
the March data will be copied to Sheet2.

Type a new value, and the data on Sheet2 will be refreshed.


Because it is worksheet code, it is very easy to install and use:

1. right-click the tab name near the bottom of the window
2. select View Code - this brings up a VBE window
3. paste the stuff in and close the VBE window

If you save the workbook, the macro will be saved with it.

To remove the macro:

1. bring up the VBE windows as above
2. clear the code out
3. close the VBE window

To learn more about macros in general, see:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

To learn more about Event Macros (worksheet code), see:

http://www.mvps.org/dmcritchie/excel/event.htm
--
Gary''s Student - gsnu200843


"Sophie" wrote:

I have a spreadsheet(sheet1) that data is inserted throughout the year. I
need a formula or vb code so that by entering a month in cell A1, it will
copy all entries in that month and paste it onto another sheet(sheet2).

Data col= A to E (Col A= date)

Thank you

--
Sophie


sophie

Copy data based on month?
 
Thanks very much it works.
--
Sophie


"Gary''s Student" wrote:

Enter the following event macro in the worksheet code area:

Private Sub Worksheet_Change(ByVal Target As Range)
Set a1 = Range("A1")
If Intersect(Target, a1) Is Nothing Then Exit Sub
Application.EnableEvents = False
Dim s1 As Worksheet, s2 As Worksheet
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
s2.Cells.Clear
k = 1
n = Cells(Rows.Count, "A").End(xlUp).Row
v = a1.Value
For i = 1 To n
If Month(Cells(i, 1).Value) = v Then
Cells(i, 1).EntireRow.Copy s2.Cells(k, 1)
k = k + 1
End If
Next
Application.EnableEvents = True
End Sub

After the installation, type a month (as a number) in A1 (4 for March) and
the March data will be copied to Sheet2.

Type a new value, and the data on Sheet2 will be refreshed.


Because it is worksheet code, it is very easy to install and use:

1. right-click the tab name near the bottom of the window
2. select View Code - this brings up a VBE window
3. paste the stuff in and close the VBE window

If you save the workbook, the macro will be saved with it.

To remove the macro:

1. bring up the VBE windows as above
2. clear the code out
3. close the VBE window

To learn more about macros in general, see:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

To learn more about Event Macros (worksheet code), see:

http://www.mvps.org/dmcritchie/excel/event.htm
--
Gary''s Student - gsnu200843


"Sophie" wrote:

I have a spreadsheet(sheet1) that data is inserted throughout the year. I
need a formula or vb code so that by entering a month in cell A1, it will
copy all entries in that month and paste it onto another sheet(sheet2).

Data col= A to E (Col A= date)

Thank you

--
Sophie



All times are GMT +1. The time now is 01:42 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com