OnTime Method Error
Dec 23, 2009
I need a macro to run at a certain time on Wednesday's, and then a certain time on the other days.
I would like to use a cell to reference that time, but right now, I am just hard coding it, but I an not get it to run.
Ultimately what I am looking for is something like this: ....
View 12 Replies
ADVERTISEMENT
Oct 3, 2007
with opening a workbook at a specific time and/or running a macro at a specific time.
View 12 Replies
View Related
Sep 6, 2007
currently i have this:
Sub StartCycleB()
ActiveWorkbook.UpdateLink Name:="c:/a/b/c/test.xls", Type:=xlExcelLinks
RunWhen = Now + TimeSerial(0, 15, 0)
Application .OnTime RunWhen, "MyMacro", , True
End Sub
Works fine. Its updating and refreshing a file every 15 minutes. When a cell in the test.xls changes to TRUE, my sheet picks it up and changes to TRUE also.
So here is the problem: Once my sheet changes to TRUE, another macro activates in my sheet. This macro will automatically activate every 15 minutes if value is TRUE. BUT the problem is i ONLY WANT TO ACTIVATE THIS MACRO ONCE a day IF the value in my sheet is TRUE. So in summary how do i activate a macro based on a TRUE value on a cell, to happen ONCE a day and then stop?
View 3 Replies
View Related
Apr 29, 2006
I am trying to use the application .ontime procedure to run a class method, but having a little trouble with what to use as my procedure name. Do I have to include the name of the class, or the name of the instantiation of the class, or what? Here is kind of what I have in the "myClass" class module:
Option Explicit
Private WithEvents m_cmdButton As MSForms.CommandButton
Private m_iTimer As Double
Private Sub m_cmdButton_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
' Set the time with the long delay
m_iTimer = Now + TimeSerial(0, 0, I_TIMER_DELAY_LONG)
' Start the timer
Call Application.OnTime(earliesttime:=m_iTimer, procedure:="ClickAgain", schedule:=True)
End Sub
Private Sub ClickAgain()
Call MsgBox("ClickAgain successfully called.", , "Boo yeah!")
End Sub
I have checked and the MouseDown event is being registered: it will work if I use a procedure in a standard module rather than the class method"ClickAgain". (I am only including the code relevant to the "ontime" procedure. My actual class has other methods to deal with setting the control source for the command button & everything.)
View 6 Replies
View Related
Aug 5, 2007
I have 2 macros, each called by the other to keep updates fast as per below,
Sub Macro1()
Cells.Replace What:=",29", Replacement:=",30", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Application .OnTime Now() + TimeValue("00:00:01"), "Macro2"
End Sub
Sub Macro2()
Cells.Replace What:=",30", Replacement:=",29", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Application.OnTime Now() + TimeValue("00:00:01"), "Macro1"
End Sub
I need to create a separate macro I can run to permanently stop these two cycling. And allow me to use Excel. Then, when I wish for these to cycle again, I simply run that macro.
View 4 Replies
View Related
Aug 13, 2007
my wonderous spreadsheets have had a number of errors on them. One of them seems that the "autosave" VBA that we have been using seems to be hidden in memory. By this I mean that if I am working on this book and close it, on occassion the workbook tries to open itself again (it prompts for the password). Therefore I think something gets stuck "in memory" but I am not sure why it would act in this way?
The code is as follows:-
Public g_blnDate As Boolean
Public vartimer As Variant
Const TimeOut = 60 'in minutes
Sub Salva()
ActiveWorkbook.Save
Call Tempo
End Sub
View 9 Replies
View Related
Dec 10, 2008
I'm trying to get the Find and FindNext methods to work. Column C contains serial numbers and there's a chance that a serial number might appear more than once in the column. What I'm trying to do is get Excel to find the first occurance of the serial number, find what row it's on and then see if this matches the variable 'CurRowNo' (defined earlier in the code). If it doesn't I want it to look at the other occurances of the serial number, find what row they're on and see again if it matches CurRowNo.
The variable 'EngCount is the number of occurances of the serial number (also worked out earlier in the code). I've got the code below, but I get the error 'Method Range of Object Global Failed' on the FindNext line. I have no idea what this error means or why it's happening.
View 3 Replies
View Related
Oct 28, 2008
My workbook holds a month template and sheets for each month. I work on modifications in the template ,but would then like to update all the monthly worksheets. I recorded a macro to show me how to start programming the vb sub, but get a runtime failure 'error 1004 Select method of range class failed' when trying to select the column to copy,
View 4 Replies
View Related
Dec 15, 2008
I have a problem with a macro that runs on a command button. When I click the button, I get a 'Run Time Error 1004, Paste mathod of worksheet class failed' The code is as follows:-
View 3 Replies
View Related
Jul 27, 2009
The procedure below worked quite happily for two months. Now it (usually, but frustratingly not always) fails, with the following error on the asterixed line:
Paste Method of Worksheet Class Failed
If anyone has the inclination, please could you put me out of my misery and suggest what is going wrong, as I have been trying on and off for two weeks to rectify this. What disheartens me is, as I say, I have had no problems with this procedure up until a couple of weeks ago. It takes the ordering info for a particular day and pastes it into the correct day's sheet on the invoicing spreadsheet. Sometimes, when I re-run the procedure it then works......???
Sub Transfer_To_Invoicing()
Dim answer As Variant, active_workbook As Variant
day_num = Range("a127").Value
answer = MsgBox("Do you want to transfer " & Weekday(day_num) & "'s figures to the INVOICING SYSTEM now?", vbYesNo)
If answer vbYes Then Exit Sub
answer = MsgBox("Have you updated the values from the despatch sheets?", vbYesNo)
If answer vbYes Then Exit Sub
Range("a1:dj129").Copy
active_workbook = ActiveWindow.Caption
For Each w In Workbooks.............
View 9 Replies
View Related
Jun 20, 2007
I have a UserForm (and associated code) to locate a specific entry in Column 'A' of a spreadsheet and insert a date, initials, and hyperlink to another file.
The basic code works fine, but did not account for the user entering a Job# that was not in the system, so I added an If/Else to account for this...
The additional code took the If (Job# not found) route every time...
Following many hours of searching this site and variations of the error handling code, I still can not get it to work.
So I'm asking for your assistance to point out why the error handling (based on other successful code found here) is not working for me.
'Insert Link
Private Sub CommandButton3_Click()
If TextBox1.Value = "" Then
MsgBox "Please Insert a Job#"
Exit Sub
ElseIf TextBox2.Value = "" Then
MsgBox "Please Insert Quoters Initials"
Exit Sub
ElseIf TextBox3.Value = "" Then
MsgBox "Please Insert Quote Date"
Exit Sub
The 'Find' part of the code is working, as the correct cell is selected after running the code... but it gives the error message, instead of executing the rest of the code...
If I remove the 'On Error Resume Next', it stops on the find block, where on inspection FindR = Nothing.
So if FindR does = Nothing, how did it manage to select the cell?
View 9 Replies
View Related
Jan 28, 2008
Asking for a row value to be returned if a string is found to exist in the sheet. Works great if it finds the value but I get the following error when the string isn't found:
Run Time Error '91':
Object Variable or With block variable not set.
Concept code follows. The commented strOCNumOF line contains the value that's found on the sheet. The uncommented line contains a value not found.
Sub find_test1()
Dim intFoundOnCur As Integer
Dim strOCNumOF As String
strOCNumOF = "AP4506"
'strOCNumOF = "BP6020"
intFoundOnCur = ThisWorkbook.ActiveSheet. Cells.Find(What:=strOCNumOF, SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
End Sub
View 4 Replies
View Related
Jun 20, 2013
I keep getting a Method Range of object_Global Failed error in the following marked like of code.
Private Sub CommandButton1_Click()
VB:
Dim GetData As Variant
Dim Criteria1 As String
Dim Criteria2 As String
Dim Criteria3 As String
[Code]....
View 8 Replies
View Related
May 14, 2007
The error is:
Method 'Range' of object '_Global' failed
Line it fails on:
Set r = Range("myRange")
Sub LearnCells()
Dim r As Range
Dim n As Long
Set r = Range("myRange")
For n = 1 To r.Rows.Count
If r.Cells(n, 1) = r.Cells(n + 1, 1) Then
MsgBox "Duplicate data in " & r.Cells(n + 1, 1).Address
End If
Next n
End Sub
Questions:
1) 1st Dim statement, is this valid? I still get a little unsure- in the data type lists in the help file, the list file does not list things like Workbook, Worksheet Range.
2) Why is the error ocurring?
View 9 Replies
View Related
Aug 2, 2006
I am having trouble with a macro that is giving me the error Run-Time error 1004 (Paste Method of Worksheet Class Failed)
The code is
Sub getfile5()
Call getfile(2)
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
Windows("TRANS CHECKS CALENDAR.XLS").Activate
Sheets(2).Select
ActiveSheet.Paste
Range("A1").Select
' ie.Visible = False
Windows("TRANS CHECKS CALENDAR.XLS").Activate
Sheets("Main").Select
Range("A1").Select
End Sub
The macro is timing out on the ActiveSheet.Paste entry...The funny thing is that a number of us can get the macro to work and several of us are getting this error...I am thinking that it is a setting in excel that is causing this...
View 8 Replies
View Related
Nov 14, 2006
I'm attempting to do a backwards search, but I keep getting a mismatch error on the Find function and don't know why....
View 3 Replies
View Related
Jun 9, 2007
I encounter a runtime error '1004' if the "Invoices" sheet is not selected when I run this procedure. The last line of the code is one which is highlighted when I debug.
Sub ProcessData()
Dim aiOldRows() As Integer, aiNewRows() As Integer ' Arrays of new/old rows
Dim rngRaw As Range 'Data entry area
Dim rngInvoices As Range 'Invoices range
Dim rngOpenPoint As Range 'Top-left corner of data entry area
Set rngOpenPoint = ThisWorkbook.Worksheets("Data Entry").Range("a3")
Set rngRaw = Range(rngOpenPoint, rngOpenPoint.End(xlDown).End(xlToRight))
FindNew aiOldRows, aiNewRows, rngRaw
InvoiceSequence aiOldRows, rngRaw
Set rngInvoices = Range(ThisWorkbook.Worksheets("Invoices").Range("A2"), _
ThisWorkbook.Worksheets("Invoices").Range("A3").End(xlDown).End(xlToRight))
rngInvoices.Sort Key1:=Range("M2"), Order1:=xlAscending
End Sub
You'll notice that there are two other procedures (FindNew & InvoiceSequence) being called by this procedure. I don't think those have anything to do with the error, but I can provide the code for those if needed. Oh, and one other secondary question. To declare the ranges rngRaw & rngInvoices I pick the top-left cell of the data and then do:.....................
View 3 Replies
View Related
Oct 4, 2007
I have the following code written:
If InStr( Cells(i, 3).Value, "Other") > 0 Then _
Cells(i, 3).Replace What:="Other", Replacement:=Cells(i, 4).Value
This seems to work fine for the most part. However, if the value in Cells(i, 4) is too long, I seem to get a Run-time error '13': Type mismatch. Is there any way to rework this code so it can replace even if the string in Cells(i, 4).Value is too long?
View 2 Replies
View Related
Oct 11, 2007
I have searched the Forum for help on this error 91 but still cannot figure this out.
Below is a format macro I created. I have several ' Find' routines in here and at the beginning of each one I give it an 'On Error GoTo' type statement. This seems to work fine until it gets to a second error. I have moved various 'Find' routines around and it doesn't matter which order they are in, if there are two things it can't find, it gives the error 91 on the second.
Sub Format_SFDC_Detail_Reports()
'
' Macro to format salesforce.com reports with details. rguest
'
On Error Goto errorhandler
Msg = "Do you want to format this report for Landscape (Yes) or Portrait (No)?"
Style = vbYesNoCancel + vbQuestion + vbDefaultButton1 + vbSystemModal
Title = "Format Report as Landscape?"
response = MsgBox(Msg, Style, Title)
If response = vbCancel Then
'Exit the routine
Goto last_line:
End If
If response = vbYes Then
format_style = "Landscape"
End If
If response = vbNo Then
format_style = "Portrait"
End If
View 9 Replies
View Related
Dec 19, 2007
I have error trapping in place so if a find in a column returns no data the procedure continues, but the code breaks there anyway.
In Tools/Options/General/Error Trapping I have Break on Unhandled Errors checked.
I have changed my error trapping lables.
I have copied the procedure and renamed it.
View 8 Replies
View Related
Oct 22, 2008
I have a macro that opens a specified woorkbook that changes every month. There are formulas which are pasted to range I1 of the new workbook to calculate the totals on this sheet. Everytime i run the code though, I get an error that says "Select method of range class failed" and Range("I1").Select is apparently the error.
View 7 Replies
View Related
May 2, 2009
I'm trying to set the print area on two sheets in the same workbook and it is returning Method 'Range' of object' _Global failed error every time and I can't figure out what code to change to make this error stop happening. here is my
View 5 Replies
View Related
Feb 27, 2012
trying to convert an excel document to an XML document and am getting the above error. Microsoft Visual Basic highlights below.
Code:
' prompt user to save to a directory
With frmAuthenticate.dlg
.Filter = "XML Files |*.xml|"
[Code]....
View 9 Replies
View Related
Jan 27, 2013
Why I'm getting the above error when I try to copy and sort data into a workbook?
I'm using this:
Code:
Sub GetData1()
Dim SaveDriveDir As String, MyPath As String
Dim FName As Variant
SaveDriveDir = CurDir
MyPath = Application.DefaultFilePath 'or use "C:Data"
[Code] .......
To import the data and then these lines to copy the unique records to a range:
Code:
Sheet33.Range("C1").Select
Sheet33.Range("C1:C1000").AdvancedFilter Action:=xlFilterCopy,
CopyToRange:=Sheet33.Range("S1"), Unique:=True
But the above lines are highlighted when I get the error.
View 1 Replies
View Related
Aug 9, 2013
I am trying to execute the following code, but I get a runtime error 1004 (paste special method of range class failed).
Code:
Sub ReviewedStatusReport()
'Define variables
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim ws3 As Worksheet
Dim ws4 As Worksheet
[Code] ........
View 9 Replies
View Related
Jul 23, 2014
Macro has been working fine for ages suddenly have received this consistently?
It's not debugging to allow me to see the route of the problem.
i've googled and seen it's normally a use of select but can't see any issue in my code or understand why it would work for months and now stop.
note: also after i click Ok on the error the macro seems to continue running and data is pulled through. ...but this message comes up every time so it's questioning the reliability of the data it's pulling.
View 4 Replies
View Related
Apr 12, 2007
Check Personnel Number in Data Tab with Personnel Numbers in Insert Tab. If they match copy that row from Insert Tab and paste it into the next available row in the Moves Tab.
Column Descriptions: Name, Age, Phone Number, Personnel Number, Notes
Worsheet Tabs: Data, Insert, Moves ....
View 9 Replies
View Related
Aug 31, 2007
This line fails, is Method Range Global error.... What is wrong w/ this, and how should it read?
If Range("D", i).Value = "Need Parent" Then
2nd Question- The following line is my normal method in doing a simple For Next Loop. What is the difference between using this one, looping through the cells and the first one referring to a Range for the loop?
If Cells(i, "D").Value = "Need Parent" Then
View 9 Replies
View Related
May 5, 2008
I found the following for something that I was searching for on the web.
Selection.Columns.PasteSpecial Paste:=8
My question is two fold, 1) What does the '8' mean? 2) Is there someplace that tells me what other numbers for PasteSpecial mean?
This solved a problem that I had when trying to do a PasteSpecial for Column Width. What I had been trying was the following:
Selection.PasteSpecial Paste:=xlColumnWidths, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
But I would get the error run time error '1004', PasteSpecial method of Range class failed.
View 9 Replies
View Related
May 20, 2008
I start in my "Action Plan for For Single Market" worksheet and if I click on the Command Button I then want to read in a couple of variables, and jump to a second worksheet (called "Market Action Plans") where I then want to copy a range, and then paste it in another area in that same sheet.
I thought I had worked out what to do, but when I execute I get a "run-time error 1004" when the macro gets to the "Range("Updated_Results").Copy" line. Excel describes the error as "Method 'Range' of object '_Worksheet' failed'" - which might as well be a foreign language as far as I am concerned!
Private Sub CommandButton2_Click()
Current_Market_Row = Range("Current_Market_Row")
First_Col_Action_Desc = Range("First_Col_Action_Desc")
Sheets("Market Action Plans").Select
Range("Updated_Results").Copy
Cells(Current_Market_Row, First_Col_Action_Desc).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Action Plan for Single Market").Select
End Sub
I am an occasional macro-creator and every now and again, I come across this type of problem where I can't get variables to be reconized, etc. I think it's because I don't understand enough about Private versus Public, and how to declare variables.
View 9 Replies
View Related