BeforeSave And BeforePrint Code Does Not Work

Jun 13, 2008

the following code work on both PC and mac? It works fine on PC, but on mac the BeforeSave and BeforePrint code does not work and the SaveASheet code gets as far as opening and pasting the sheet but then is unable to save automatically.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
SaveASheet
End Sub
Private Sub Workbook_Open()
Sheets("Open").Activate
End Sub
Sub SaveASheet()
Dim fName As String
Dim myPath As String
Dim sht As Worksheet
#If Mac Then..........

View 9 Replies


ADVERTISEMENT

Code In BeforeSave Event Causing A Double Save

Jul 22, 2009

In the situation where I shut down my model (i.e. not just press Ctrl+S, but shut it down), the following code saves the model twice. I only want it to save once. I really can't see why it saves a second time.

NB: I know if you set Cancel to True in the BeforeSave event, it should prevent the model from saving after the event, but even when set to true in the below code, it still saves...

Private Sub Workbook_BeforeClose(Cancel As Boolean)
bIsClosing = True 'Given we shut model, this public bIsClosing is set to true...
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim wsArray() As Variant
Dim iCnt As Integer
Dim wsSht As Worksheet
Application. ScreenUpdating = 0
Splash.Visible = True 'Splash is codename for warning spreadsheet, this is left
'visible while all other sheets are to be hidden.......................

View 9 Replies View Related

If Command In BeforePrint

Sep 22, 2009

The following code is not working like I thought it would. I've got 4 named cells on a worksheet, and if any of them are blank, I don't want the user to be able to print it. What am I missing? Is it something with my Cancel = True statement?

View 2 Replies View Related

BeforeSave Cause Crashes

Dec 3, 2009

I have the following code that (should) either save the file with a generic name if a value exists in a certain field, or else save the file as the contents of the value in the field, with a message box appearing in either case. The problem is, the message box appears twice (not once) and then Excel crashes! Can anyone tell me what's going on? The code is:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim FSR As String
FSR = Range("I7").Value
If FSR = "" Then
MsgBox "Service Report Number not entered."
ActiveWorkbook.SaveAs Filename:="Service Report Navilas.xls"
End If

If FSR "" Then
MsgBox "This action will save the file as the Service Report Number."
ActiveWorkbook.SaveAs Filename:=FSR & ".xls"
End If

End Sub

View 6 Replies View Related

Add Beforeprint To New Workbook Crashes?

Apr 3, 2007

I’m launching a new workbook, exporting some stuff, basically creating a report. But then I want to add a BeforePrint event to the new worksheet. Both of the macro below works great right up until I change “Sheet1” to “ThisWorkBook”…then Excel crashes.

Sub AddCode1()
Dim VBCodeMod As CodeModule
Dim LineNum As Long
Dim Copybook As Workbook
Set Copybook = Excel.Workbooks.Add
Set VBCodeMod = Copybook.VBProject.VBComponents("sheet1").CodeModule
LineNum = VBCodeMod.CountOfLines + 1
VBCodeMod.InsertLines LineNum, "Private Sub Workbook_BeforePrint(Cancel As Boolean)" & Chr(13) & "if ActiveSheet.CodeName <> ""Sheet1"" or ActiveSheet.CodeName <> ""Sheet2"" or ActiveSheet.CodeName <> ""Sheet3"" then" & Chr(13) & "MsgBox(""This Electronic Outcome Review Summary Report is NOT optimized for Printing......................................

View 5 Replies View Related

Insert Beforeprint In New Workbook

Apr 4, 2007

It shouldn't be this hard, from within an excel macro I am currently adding a new workbook and doing "some stuff" basically creating a report based on the first workbook.

In the new workbook I want to add a BeforePrint event to the ThisWorkBook Module. I can add it to other sheets, to code modules and other code to the thisworkbook module....but not the BeforePrint?

here is the code I've been working with, I also checked Chip Pearson's site and still can not figure it out.

Add Beforeprint To New Workbook Crashes?

View 9 Replies View Related

BeforeSave Workbook Event

Apr 20, 2007

I am trying to find out more info regarding the BeforeSave workbook event, need example of a short procedure that would prevent the user from saving the workbook with the current workbook name, and would automatically force the file to save as a web page? I'm sorry that I don't have any examples of code that I'm working with, and it feels pretty juvenile to just ask someone to write code for me. But I haven't been able to get past step one with this.

View 2 Replies View Related

Workbook>Beforesave Function To Add Cell Borders

Feb 9, 2010

I have a spreadsheet that I'm working on and I'd like to include a beforesave macro to format the spreadsheet. Basically I need a macro to select all rows with data in column 'a' and add a thick border to the top of the cells. Ideally the border would stop at column 'i' but that's not essential. I've attached an example of what I'd like. I've included 2 sheets 1 called 'before' and 1 called 'after'. They show what I'm after.

View 3 Replies View Related

BeforeSave, Create Folder & Sub-foldername If Has Not Been Created

Oct 13, 2004

Example below is in my macro and when my peer is running this worksheet which has Workbook_Open() enabled in "ThisWorkbook", the outcome is that he can not successfully save this workbook because he doesn't have the folder and sub directory in his C: drive.

How do I code it such that in the event the user does not have the specified folder and sub-foldername, it will automatically create one for him and save it as "C:Spare PartsCritical ListStocking Status.xls".

Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
"C:Spare PartsCritical ListStocking Status.xls"

View 3 Replies View Related

Dynamic Print Ranges & Worksheet BeforePrint Event

Jan 27, 2008

I have a dynamic print range defined as follows:-

=OFFSET(Sheet1!$A$1,0,0,MATCH("PRINT_AREA_ROWS",Sheet1!$A:$A,0),MATCH("PRINT_AREA_COLUMNS",Sheet1!$1:$1,0)), lets say this equates to range("A1:D12")

I also have a workbook beforeprint event defined as follows:-

Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.LeftFooter = "Pete"
End Sub

My problem is that after the Print Event has fired , the dynamic range has been converted into a static one i.e range("A1:D12"). I have tried this on all version of Excel from 97 to 2007 and it behaves the same so premably this must be by design rather than a bug?

Am I doing something wrong? What is the work around? I'd rather not have to create the dynamic range within the print event procedure unless I have to as my workbook has many, many tabs!

View 9 Replies View Related

BeforePrint Check Left And Right Header For A Specific Text

Feb 26, 2010

I would like to BeforePrint check Left and Right Header for a specific text. If the text is different then i.e. “XYZ Test” then call sub ClearForm().

View 9 Replies View Related

Protecting Code Against Work Arounds

Feb 3, 2009

I've written some code that passwords a sheet, and that code needs to be entered each time you access the sheet because you can carry out any changes.

I've written it so that the password changes every 30 days, and it's protected from the ctrl + break function.

The code will be activated after a certain date (28/02/09). Is it possible to add a bit of code to this, so that once the date has passed 28/02/09, it cannot be 'tricked' by changing the system clock to before this date?

View 14 Replies View Related

Code Does Not Work When Change Column Value A To D

May 7, 2012

I have a macro that runs through a list and stores elements to an array. If the element is not found in my list, it adds to the next available row and adds the value from the array to that cell. Right now, I am searching in column d but am storing the value of column a at that location. When I switch the reference to column D, the value is not inserted into my new list.

Here is my current code:

Code:
Sub Arraytest()
Dim arr As Variant, lastrow As Long, i As Long, f As Long, l As Long, lastrow2 As Long, insertrow As Long

[Code].....

Why does the code not work properly when I switch to D? The value is storing correctly in the array. I test this by the last line of the code and it executes properly.

View 1 Replies View Related

Code To Work Between Two Open Workbooks

Mar 23, 2014

I have this code...

Code:
Sub Macro1()
'
Sheets("Log").Select
Range("F1").Copy
For Each wb In Workbooks
If wb.Name Like "Test Book*" Then
wb.Activate
Sheets("Data").Select
Range("O2").Select
ActiveSheet.Paste

[code].....

can't get it to work properly...Basically I want the code to copy the date in cell F1 of the 'Log' sheet in Workbook 'Main' - then goto an open Workbook called 'Test Book' (note: this Test Book is a partial string name used hence the other code around it) and paste the copied date into cell O2 in sheet 'Data'

Using this pasted date in cell O2 carry out the required filter function.

The copy/paste of the date from my Workbook Main to Test Book isn't working so the code then shows error when trying to filter the data using the pasted date.

View 4 Replies View Related

Code To Work On Some Sheets Only Across All The Books

Nov 14, 2006

I use a code to work on all the sheets across all the files. But now I want the code work only on sheet named Paid across all the files.

Sub PP()
Dim wb As Workbook
Dim ws As Worksheet
Dim varWBnames As Variant
Dim varItem As Variant

varWBnames = Array("Book4.xls", "Book5.xls", "Book6.xls")

For Each varItem In varWBnames
Set wb = Workbooks(varItem)

For Each ws In wb.Worksheets
ws.Activate
ws.Range("A1").Formula = "=A2+A3"
Next ws
Next varItem
End Sub

View 9 Replies View Related

Not Work When Copy Code Letter

Apr 20, 2008

One thing that absolutely drives me nuts is when I copy code letter for letter from the book (Excel VBA Programing For Dummies) and it doesn't work. You don't know if it's the book or yourself. Here's the latest piece of code that doesn't work.

Sub SetAlarm()
Application.OnTime TimeValue("7:30:00 pm"), "DisplayAlarm"
End Sub

Sub DisplayAlarm()
Beep
MsgBox "Wake up, homey!"
End Sub

The message and time are mine, of course, but the rest of the code is exact. I've changed the time multiple times, but it just flat-out won't execute.

View 9 Replies View Related

Case Statement - VBA Code To Work Automatically

Aug 27, 2013

I've selected a case statement (see below) but I want to that code to work automatically. So i do not want to press a button to show a certain value in S2. But I want cell c2 to automatically pop up the value (depending of the value in V4). So kind like an if/then statement.

Sub CASEMEDEWERKER()
Select Case Range("F4").Value

Case "Medewerker"
Range("S2") = "M"

Case "Interview"
Range("S2") = "I"

Case "Data"
Range("S2") = "D"

Case "Observatie"
Range("S2") = "O"
End Select
End Sub

View 4 Replies View Related

Macro Code To Work Between 2 Open Workbooks

Jun 4, 2008

I am trying to simultaneously use two Excel workbooks that are open at the same time--one is calculations--other is data scenarios...one worksheet = one scenario: A macro uses "Set" to specify workbooks for "current_wb" and "wbkFrom". Code here

Set current_wb = ThisWorkbook
Dat_Fil = Application. GetOpenFilename
Workbooks.Open Dat_Fil
Set wbkFrom = Application.ActiveWorkbook

NOTE-Workbook object variables are declared outside any macro, and as "public." Code here

Public current_wb As Workbook
Public wbkFrom As Workbook

In a second macro I want to use the Current_wb and wbkFrom object variables I set in first macro, but get the following error: "object variable or With block variable not set" for any of the following statements in the second macro

current_wb.Activate
current_wb.Worksheets(1).Select
wbkFrom.Activate

I've declared the object variables as public in a different code module where there is no other code; I've tried declaring as public at the top of the code module that has my macros, but declared at top of code module and outside any macro; I've tried declaring the object variables as "static" variables (instead of "public") within the first macro. I can't figure this out.

View 4 Replies View Related

VBA Code Doesn't Work When Formula In Sheet Is Removed

Apr 16, 2009

I had to remove a lot of pictures in the xls file in order to attach it, (since the original is about 5.3mb) but it worked out. When you move your arrow over the titles in column A a picture shows up thanks to a code. When you change the status in column G, the color changes together with the title in column A, as it should.

View 4 Replies View Related

Rewrite Protect Code So That It Will Work With A Hidden Sheet.

Aug 25, 2009

I need this code below to work in a macro on a hidden sheet.. FYI the sheet name is "Closed".

View 2 Replies View Related

Making Existing Code Work For Specific Worksheet/s

May 30, 2013

I would like the following code to be run for all those sheet/s that has a name = "single" (Not case sensitive neither an exact match) of my active workbook.

Code:
Sub UIUIUI()
Dim LR As Long, i As Long
LR = Range("I" & Rows.Count).End(xlUp).Row
For i = 1 To LR
With Range("I" & i)
If .Offset(, -1).Value = 1 Then .Value = .Value & "-"
End With
Next i
End Sub

View 3 Replies View Related

Formula- To Develop A Code To Include Into A Spreadsheet For Work

Jan 20, 2009

I am having trouble trying to develop a code to include into a spreadsheet for work. It will be a live spreadsheet accessed by a few people who will have control over there own columns in the spreadsheet (2 columns are designated for one project) Each Project director is to edit the info about their project.

So my goal is to put a code in cell C3 that shows the date that cells C4-32 and D4-32 were last updated.

View 9 Replies View Related

Code To Return Data From Multiple Work Sheets

Apr 23, 2009

I have a folder on a public drive. (\CFDIVIX1PublicPurchasing2009)

This folder contains multiple sub-folders (the sub folders are vendors which I purchase merchandise from) each sub-folder has 1 .xls file in it. Each file has 1 sheet containing all the information I need to retrieve.

Each one of these files has the same header information in cells A1 through I2 so I manually place that when I create this new workbook prior to inserting the macro. Each work sheet has a different # of rows depending on the number of items I buy from that particular vendor but I feel safe saying it never exceeds 250 rows per worksheet.

What I need
For the macro to pull up the first work sheet and pull out the data from cells A3 through I250 and place that data into my new work sheet in the same format. Then I want the code to move on to the next worksheet and pull out the A3 through I250 and place that data in the new worksheet directly below the last row of data that was pulled in. (Also it would be great if the code ignored blank values. Like if the first work sheet it pulled data from only had data in the first 10 rows I don’t want 240 rows of blank rows before the next set of data)

I hope that running this macro will accomplish transferring all of my data from these multiple sheets into a single work sheet containing all of the pricing for all of my vendors. Once I have this I can place a second sheet on the workbook and use a formula to pull out pricing information that I need on a per basis without having to search through 50 vendors to find who it comes from. I don’t control the vendor work sheets that I want to extract data from so I need to use the macro to run it weekly incase my purchasing dept makes changes.

View 9 Replies View Related

Excel 2007 :: VBA Code Doesn't Work In Outlook 2010

Jun 23, 2014

My company recently upgraded everyone to Microsoft 2010 from 2007 version. I have no substantial VBA skill and left with a VBA code which is supposed to extract a list of outlook emails sitting in a shared mailbox into Excel.

I was using that VBA code in Outlook 2007 and it worked fine but shows the following error when run in Outlook 2010: 'Run-time error '-2147221233 (8004010f)': The attempted operation failed. An object could not be found. Here is part of the code:

[Code] .....

It worked after one of the members suggested to "click on any line of this code and press F8 repeatedly until the yellow focus moves to the error line, don't press F8 anymore. Now in immediate window, copy paste each of below lines, press enter after each line. Let us know where the error occur." However, it stop working the next day.

? olNS.Folders("Mailbox - Market Intelligence").Folders.Count
? olNS.Folders("Mailbox - Market Intelligence").Folders("Inbox").Items.Count
? olNS.Folders("Mailbox - Market Intelligence").Folders("Inbox").Folders("MI").Items.Count

View 2 Replies View Related

User Defined Function With If Statement Does Not Work / Incorrect Code

Mar 7, 2014

I am trying to create the following function but I cannot seem to get it working correctly.

[Code] .....

View 3 Replies View Related

This Simple 10 Line Code Doesn't Work If Just The Reference Is Changed..

Jun 10, 2009

I asked for a macro to delete the whole row if a duplicate customer number was found in column B. Sometimes, though, my column numbers change. So, logically thinking, I simply changed the criteria, but the macro ONLY seems to work if duplicate customer numbers are in column B only.

This code below won't work if the Customer Number is in column D instead of B even if the reference of B:B is changed to D:D, it doesn't carry the macro over.?

View 3 Replies View Related

Automatically Refresh Without Having To Click Or Press Enter To Get VBA Code To Work

Feb 25, 2013

I have some VBA code which hides columns based on a cell value. The cell value changes according to which option button is selected. The code works but not when the button is selected and the cell value changes. It is necessary to click elsewhere in the sheet or press Enter to get the columns to hide. I want it to do it automatically as a user wouldn't know to click elsewhere.

The working code is:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("N5").Value = 2 Then
Columns("O:R").EntireColumn.Hidden = True
Else
Columns("O:R").EntireColumn.Hidden = False

End If
End Sub

N5 is the linked cell for the option button.

View 4 Replies View Related

ActiveX Listbox Does Not Work With VBA Code For Changing Chart Axis Scale?

Jun 5, 2014

I have some code for changing the scale of my chart axes so that when new data is inserted into the column which the chart sources from (say column B), the axis scales on my chart will automatically adjust (as the Excel algorithm sometimes leads to charts which are a bit squashed). This code works fine, and I have included it below.

I have then tried to introduce an ActiveX listbox so that when you select an item in the box, the reference number generated (1,2,3...etc) then determines which data series is inserted into column B using a vlookup function. However, when I do this, the original VBA code for automatically adjusting the chart axes no longer works.

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
With ActiveSheet.ChartObjects(1).Chart

[Code].....

View 4 Replies View Related

Open All Excel Files In Directory - Code Doesn't Work For One Specific Path

Feb 8, 2014

I have my code here:

VB:
Sub openfiles()Dim Path As String
Dim ExcelFile As String
' Path = GetFolder("C:UsersKinteshDesktop")
Path = "C:UsersKinteshDesktopVBA programmingMaps"
ExcelFile = Dir(Path & "*.xls")

[Code] ....

NextCode:
GetFolder = sitem
Set fldr = Nothing
End Function

My problem is that the code all actually works (including the function and when I use the commented part), but pointing to this one specific directory (the one I'm using right now), literally nothing happens.

View 6 Replies View Related

Work Out A Formula For My Spreadsheet Which I Use To Work Out Cutting Lists For Timber Frames

Jan 11, 2009

i need to work out a formula for my spreadsheet which I use to work out cutting lists for timber frames. I need it to work out if the width of a job is for eg 2400mm i need to work out how many timber studs I need so the space between each stud is between 400mm and 500mm and this will need to work for a range of different sizes of frames. I have it written at the moment and it just devides the width by 400 and gives me a amount of studs but it would work much better if it could space them between 400 & 500.

View 4 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved