Find And Find Again - Object Variable Or With Block Variable Not Set
Jun 5, 2007
After doing a search, I need to ask an Excel 2003 question. I'm creating a tool to open three sparate workbooks. One is the driver and I need to use it to pull data from the second and then to place that data along with additional data into the third.
My driver data may consist of a single value or multiple values separated by semi-colons in a cell. A single value works fine. The first value in a multi-value condition works fine. the second find, however, gives me an object error. I'm using the " split" verb to separate the values. Here's my code. Have you any idea why the second find is throwing up this error when the first find works correctly?
varData = Split(strRef, ";", -1)
For J = 0 To UBound(varData)
varSrchVlu = Trim(varData(J))
' do the ARIS Exrtact matching
Workbooks(strARISExtract).Activate ' Activate ARIS Extract
I found this nice little bit of code for a date range search in column A but it will not work. Apparently i have not set a variable or something.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim startDate As String Dim stopDate As String Dim startRow As Integer Dim stopRow As Integer startDate = InputBox("Enter the Start Date: (dd/mm/yyyy)") If startDate = "" Then End stopDate = InputBox("Enter the Stop Date: (dd/mm/yyyy)") If stopDate = "" Then End startDate = Format(startDate, "dd/mm/yyyy") stopDate = Format(stopDate, "dd/mm/yyyy") startRow = Worksheets("sheet1").Columns("A").Find(startDate, _ LookIn:=xlValues, lookat:=xlWhole).Row stopRow = Worksheets("sheet1").Columns("A").Find(stopDate, _ LookIn:=xlValues, lookat:=xlWhole).Row Worksheets("Sheet1").Range("A" & startRow & ":A" & stopRow).Select
I have a spreadsheet form with all kind of values and what I want to do is to find a data in a worksheet named "Config" based on the spreadsheet activecell value. With the find row adress I return data of another column but same row (in the worksheet) in two diferent label captions. If the spreadsheet activecell value it was found in the worksheet everything is ok but if the value is not found I'm getting the message "Object variable or with block variable not set"....
I'm fairly new to macro's and VBA, by searching on the internet i've copied and pasted some code together into a macro. But it ends in a Run-time error 91...
The macro opens a target .xls file in a selected folder, performs copy - paste actions from masterfile to targetfile. Than it filters data in the targetfile sheet1 and copy's the results to the various other sheets; saves and closes the targetfile. The next target file in the folder is opened and the actions are repeated in this second target file. For the first target file this works smoothly; but for the second one (of a total of around 100) it does not copy the filter results to the other sheets in this workbook. The error message i get is: "Run-time error 91:Object variable or with block variable not set." When i hit debug it highlights the line "ActiveSheet.Next.Select" which, at least in the first file, seems ok.
When i try to run the code below i get the error message - object variable or with block variable not set-
'LIST Cells(Sheets("POINTS").Range("DD801").Value, Sheets("POINTS").Range("DD800").Value).Select Selection.AutoFilter Field:=1, Criteria1:="1" 'SET RANGE Dim sFormula1 As String Dim sFormula2 As String Dim sCell1 As String Dim sCell2 As String Dim sSheet1 As String Dim sSheet2 As String Dim r As Range Dim MyRange As Range 'for testing
With Sheets("Points") sFormula1 = .Range("CY1").Formula sFormula2 = .Range("CY2").Formula End With
'FORMULA IN R1C1 STYLE strFormula = "=IF(ISNA(VLOOKUP(RC[-1],MASTER!R4C3:R17908C7,3,FALSE)),0,VLOOKUP(RC[-1],MASTER!R4C3:R17908C7,3,FALSE))" 'ENTER FORMULA IN ALL CELL RANGES r.FormulaR1C1 = strFormula 'REDUCE TO VALUES Dim ar As Range 'an area is a range For Each ar In r.Areas 'areas are discrete, contiguous ranges of cells ar.Value = ar.Value Next ar
I attempted to modify "macro_1a1ay" to look into the "comments" sheet (column a) for a specific text string. If that text string is found, I have it delete the entire row, then re-sort the page and return to the calling page. It works well as long as it finds something. When it does not find the string (i.e. like now when the page is blank) it gives me the run-time error mentioned above.
I am having a lot of trouble finding out why I am getting error. I believe the error is because it can't find the number. In cells C115:C314 i have the numbers 1 to 200 in order. when someone types in 1 to 9 in the text box it works, but on 10 and over i get the error ???? here is the code I have
Function Find_Range(Find_Item As Variant, _ Search_Range As Range, _ Optional LookIn As Variant, _ Optional LookAt As Variant, _ Optional MatchCase As Boolean) As Range Dim c As Range If IsMissing(LookIn) Then LookIn = xlValues 'xlFormulas If IsMissing(LookAt) Then LookAt = xlPart 'xlWhole If IsMissing(MatchCase) Then MatchCase = False With Search_Range Set c = .Find( _ What:=Find_Item, _ LookIn:=LookIn, _ LookAt:=LookAt, _ SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=MatchCase, _ ........................
Using the message box I see that sheet 1 opens but then I receive an error message Run Time Error 91, Object Variable or With Block Variable not set. I tried declaring and using set on "project" but got nowhere. I also need to have a message indicating project not found. Once this part is solved I will loop all of my other workbooks
I've got a simple Macro which manipulates data in various worksheets. Problem is that I get the error: "object variable or with block variable not set" in the area of the code that I have put in bold below:
All I'm trying to do in this part is find the first occurrence of the #n/a value ....
I'm trying to run some code but I keep getting the Object Variable or With Block Variable Not Set message. I'm not using any object in the line that is causing the error.
I'm getting an error on the last line of given code
Code: Private Sub addDescriptions(BucketTotal as Double, Descriptions as String) Dim DCELL as Range '''Loop Through Controls''' For i = 1 to 20 if Controls("TR" & i).Value = "" Then Exit For Else Set DCELL = Columns("F").Find(Controls("DivRate" & i), Lookin:=xlValues, Lookat:=xlWhole).Offset(0,3)
At a high-level: My code fails in the sub-routine that is called (SecondSub). The first line of code on the SecondSub is where I get the Error 91 Object Variable or with block variable not set.
1st Routine: ________________________________________________________ Sub FirstSub() Dim ie As Object, iebody As String, strURL As String, strUsername As String, strPassword As String Dim lRow As Long Dim abc As String Dim striEst As String Dim ele As Object Dim LinkHref As String Dim a As String Dim b As String Dim c As String a = DateAdd("d", -1, Now) b = DateAdd("d", -2, Now) c = DateAdd("d", -3, Now)
Set ie = CreateObject("InternetExplorer.Application") strURL = "website" strUsername = "xxxxxxxxxxx" strPassword = "xxxxxxxxxxx" While ie.busy DoEvents Wend......................
I have my below code which will create a looping "ftp" and "get" effect. However i am having some problems right now. There's always an error that states "Object variable or With block variable not set".
Dim N As Integer Dim Lotid As Variant Dim Tester_array(1 To 15) As String
I have the following code (just pasting the relevant section) which crashes when it reaches the highlighted line of code. and a dialog box pops up with the text: "Object variable or With block variable not set"
Sub test() Dim StartRng As Range Dim Buffer As Range
I have created a form, that users will use to input data. I want to provide a template excel workbook, that they are supposed to copy, and save with their own file name leaving the template untouched. The following code is supposed to check to see if this is the template workbook, and if so, it will open an worksheet (otherwise hidden) to allow them to do a "save as". Everytime I try to run the code I get the following error..."object variable or With block variable not set" and I don't know what I'm doing wrong. The only thing I did find was if I removed the "unload me" I didn't get the error. However, I need the form to unload so that the user can save the file under a new name.
I am trying to call one webMethods service from excel. The code is generated by webMethods. I can compile the code without any error. But while running the code I am getting this error "Object variable or with block variable not set".
Option Explicit Private wc As Context Private CError As String Private outputs As New Values Private isConnected As Boolean Public Function TestWebServie(in_name As Variant) As String On Error Goto Err_TestWebServie Dim inputs As New Values If isConnected = False Then CError = Connect End If If Len(CError) = 0 Then inputs.put " name", in_name setStatus ("Invoking service Default.SukantaTestWebServie...") Set outputs = wc.invoke("Default.Sukanta", "TestWebServie", inputs) Else TestWebServie = CError End If clearStatus...........
Hit a runtime error 91 "Object variable or With block variable not set" at the Loop Until Point.
Private Sub UpdateOldPL() Dim n As Range, gg As String Dim Delete As String Delete = "CHECK" With Range("C5:C65536") Set n = . Find(Delete) If n Is Nothing Then Exit Sub gg = n.Address Do n.Offset(0, -1).FormulaR1C1 = "=VLOOKUP(RC[-1],'Unrlized_P&L(Dt_of_Rpt)_t-1'!C[-1]:C,2,0)" n.Offset(0, 3).FormulaR1C1 = "=0-VLOOKUP(RC[-5],'Unrlized_P&L(Dt_of_Rpt)_t-1'!C[-5]:C,10,0)/1000" n.Offset(0, 4).FormulaR1C1 = "=0-VLOOKUP(RC[-6],'Unrlized_P&L(Dt_of_Rpt)_t-1'!C[-6]:C,11,0)/1000" n.Offset(0, 5).Value = "SOLD" n.Value = 0 Set n = .FindNext(n) Loop Until gg = n.Address End With End Sub
It seems like this error applies when it can't find something you're referring to, like an object variable. But I can manually find every variable in my code and can't see what I'm missing:
Public Sub InventoryFile()
Public InventoryWksht As Worksheet Public CriteriaWksht As Worksheet Public Criteria As Range Public InventoryRange As Range Public Sheeti As Worksheet
With Workbooks.Open("MyFile.xls") Set InventoryWkbk = ActiveWorkbook Set InventoryWksht = InventoryWkbk.Sheets(1) End With With InventoryWksht.Cells(1, 1). CurrentRegion.Name = "Inventory" Set InventoryRange = InventoryWksht.Range("Inventory") End With Worksheets.Add ActiveSheet.Name = "Criteria" With CriteriaWksht Set CriteriaWksht = ActiveSheet CriteriaWksht.Range("A1:B2").Name = "Criteria" Set Criteria = CriteriaWksht.Range("Criteria") Criteria.Cells(1, 1).Value = "Value" Criteria.Cells(1, 2).Value = "Location" End With End Sub ...
Public Sub PasteData() Dim k As Integer Dim i As Integer Dim ro As Integer Dim co As Integer
ro = 3 co = 21 With boxi Range(.Cells(2, 1), .Cells(calls + 1, no_material)).Copy End With With aus For k = 0 To (no_material - 1) .Cells((3 + (k * calls)), 1).Paste Next End With With FIinfo For i = 1 To 20 If .Cells(i, 2).Interior.color = 5287936 Then .Cells(i, 2).Copy With aus Range(.Cells(ro, co), .Cells(ro + calls, co)).PasteSpecial ro = ro + calls + 1 End With End If Next End WithEnd Sub
The line in italics is the one causing the problem, I keep getting "Object variable or With block not set" error.
aus and boxi are both publicly defined in the module to be worksheet.
I've written a vba code to graph a large number of graphs for me with two data series on each graph. To test my theory on it working I broke it down into parts and ran each separately as I went so I wouldn't have to sift through the whole thing to find an issue when I was finally finished... well I'm finished and it has a random error.
Code: Sub chart() Dim n As Integer 'worksheet index number that the chart goes on Dim date_col As String Dim m_max As String Dim m_min As String Dim m_avg As String
I stuck a end sub here for the sake of trying to isolate the part throwing the error and it still came when I ran the top part.
'Average Temperature Worksheets(n).Shapes.AddChart.Select ActiveChart.ChartType = xlXYScatterLines
The following macro gives me two types of error messages:
"object variable or with block variable not set" or "subscript out of range" on the first or the second line valFoundRow=...
And I could not understand why...
What I am trying to do is delete a couple of rows with unnecessary information, then copy the rest in different columns, not in one as they are now. I have no problem with the second part of the macro - it worked just fine before I added the part where the rows, containing "Share", "Save", "Email a Friend", "TRUE and the empty rows are supposed to be deleted.
Set rng5 = Range(.Cells(celle2.Row, celle4.Column), .Cells(celle2.Row, celle4.Column))
Sub UpdateNumbers() Dim rng1 As Range Dim rng2 As Range Dim rng3 As Range Dim rng4 As Range Dim celle1 As Range Dim celle2 As Range Dim celle3 As Range Dim celle4 As Range Dim celle5 As Range Dim flag1 As Long Dim flag2 As Long................
I only get the error 91 "object variable or blocked vairable not set" when the below code is used or loaded in Internet Explorer IE 9 browser but works fine in Excel.
Public Sub CommandButton9_Click() Dim myDir As String, fn As String, wb As Workbook, rng As String myDir = "C:DatabaseCust_Name" fn = TextBox2.Text On Error Resume Next Set wb = Workbooks(fn) If wb Is Nothing Then