View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein \(MVP - VB\)[_1869_] Rick Rothstein \(MVP - VB\)[_1869_] is offline
external usenet poster
 
Posts: 1
Default Get date from prior sheet and add 7 days

Good, that means you are using Option Explicit. The warning message mean you
are trying to use a variable for which there is no Dim statement. Gary''s
Student omitted them. Add these to the "setdate" code...

Dim n As String
Dim i As Long

and the error messages should go away.

Rick


"cottage6" wrote in message
...
Hi,
I'm getting "variable not defined" on the first line. Help?

"Gary''s Student" wrote:

Run this macro; it determines the preceding sheet, gets the date from
that
preceding sheet, and sets the date cell on the current sheet:

Sub setdate()
n = ActiveSheet.Name
For i = 1 To Sheets.Count
If n = Sheets(i).Name Then Exit For
Next
Sheets(i).Range("C3").Value = Sheets(i - 1).Range("C3") + 7
End Sub

Just don't run it on the first sheet.
--
Gary''s Student - gsnu200783


"cottage6" wrote:

Hi Everyone,
I'm rewritting an old .123 file to Excel. There's lots of sheets and
all
have a hard-coded date in cell C3. I want to start with the last
hard-coded
date (April 26 sheet) and start using a formula to increment that date
by 7
days to come up with May 3, May 10 on the next new sheet, and so on.
VB code I've rewritten so far copies a template sheet (no date in the
template in c3) to a new sheet and adds it to the left of the April 26
sheet,
sets C3 in the new sheet equal to some text I'm just goofing around
with to
test, and then renames the sheet to the value in C3. I really need the
value
in C3 to equal C3 from the prior sheet + 7. I've included the code
below.
Thanks!
Sub NewSheet()
Sheets("Blank Template").Select
Sheets("Blank Template").Copy AFTER:=Sheets(2)
Range("C3").Select
ActiveCell.FormulaR1C1 = "go Crunch!"
Dim wks As Worksheet
For Each wks In ActiveWindow.SelectedSheets
wks.Name = wks.Range("C3").Value
Next wks