ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Getting VBE to recognize a new sheet (https://www.excelbanter.com/excel-programming/288671-getting-vbe-recognize-new-sheet.html)

quartz

Getting VBE to recognize a new sheet
 
Hello, HELP!

Each time my program runs, it replaces an existing "REPORT" sheet with a new one. The program then writes VBA into the newly created sheet module. This program runs fine the first time (i.e. when there is no pre-existing "REPORT" sheet).

If there is a pre-existing "REPORT" sheet, the program explodes (and I am in the blast radius).

The problem is, I think, that the portion of the program that writes the code into the module sheet does not yet see or recognize that the new "REPORT" sheet exists yet (even though it actually does).

How can I overcome this situation and make it see the new sheet on the fly?

Thanks in advance.


Bernie Deitrick

Getting VBE to recognize a new sheet
 
quartz,

Usually, it is solved by starting off with something like

On Error Resume Next
Application.DisplayAlerts = False
Worksheets("REPORT").Delete
.....
'code to add the new REPORT sheet
.......
Application.DisplayAlerts = True

HTH,
Bernie
MS Excel MVP

"quartz" wrote in message
...
Hello, HELP!

Each time my program runs, it replaces an existing "REPORT" sheet

with a new one. The program then writes VBA into the newly created
sheet module. This program runs fine the first time (i.e. when there
is no pre-existing "REPORT" sheet).

If there is a pre-existing "REPORT" sheet, the program explodes (and

I am in the blast radius).

The problem is, I think, that the portion of the program that writes

the code into the module sheet does not yet see or recognize that the
new "REPORT" sheet exists yet (even though it actually does).

How can I overcome this situation and make it see the new sheet on

the fly?

Thanks in advance.




quartz

Getting VBE to recognize a new sheet
 
Bernie,

Thanks for responding, but actually my code is already structured similarly to the way you suggested.

I don't get a normal trappable error, I get a fatal error that causes Excel to shut down altogether.

Sometimes my code actually succeeds before it dies, other times, it doesn't write the code into the module when the error occurs.

Any other ideas???


Bernie Deitrick

Getting VBE to recognize a new sheet
 
quartz,

Sounds like it is time to:

1) Use Rob Bovey's code cleaner utility

2) If that doesn't work, start from a new workbook and rebuild your
application (unfortunately, it sounds like it is corrupted)

HTH,
Bernie
MS Excel MVP

"quartz" wrote in message
...
Bernie,

Thanks for responding, but actually my code is already structured

similarly to the way you suggested.

I don't get a normal trappable error, I get a fatal error that

causes Excel to shut down altogether.

Sometimes my code actually succeeds before it dies, other times, it

doesn't write the code into the module when the error occurs.

Any other ideas???




quartz

Getting VBE to recognize a new sheet
 
Rebuilt the file from scratch. Same behaviour.

Running the code inside the VBE does not generate any error.

Running it as the user would from the App generates the error.

Dick Kusleika[_3_]

Getting VBE to recognize a new sheet
 
quartz

Here's how I would do it. You can compare this to what you have

Sub MakeNewSheetCode()

Dim sh As Worksheet
Dim Vbc As VBComponent

On Error Resume Next
Application.DisplayAlerts = False
ThisWorkbook.Sheets("Report").Delete
Application.DisplayAlerts = True
On Error GoTo 0

Set sh = ThisWorkbook.Worksheets.Add
sh.Name = "Report"

Set Vbc = ThisWorkbook.VBProject.VBComponents(sh.CodeName)

With Vbc.CodeModule
.CreateEventProc "Change", "Worksheet"
.InsertLines .ProcBodyLine("Worksheet_Change", _
vbext_pk_Proc) + 1, "Call MySub"
End With


End Sub

--
Dick Kusleika
MVP - Excel
www.dicks-clicks.com
Post all replies to the newsgroup.

"quartz" wrote in message
...
Sorry,

I should have added that depending upon how I structure my code, I do get

a subscript error on the sheet, as though it doesn't exist or can't be
found. This error is incurred AFTER the program has already replaced the
sheet AND written data into it!

Again thanks for your assistance, I do hope you or someone posts back...





All times are GMT +1. The time now is 10:42 PM.

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