I am currently working on a VBA function that searches a spreadsheet for a particular time and date. In the time and date column, there exists a cell for every hour of the year from January 1st 12am to December 31st 11:00pm. So for any given date, there are 24 entires with the same date, but each with a different time (that is the intervals are in one hour increments.)
What I have been attempting to put together is a simple worksheet. Find method to search for a date, I.E. 1/22/2006 3:00:00 AM. I have read countless posts and websites saying that you must format the date and time into a window date format such as 1/22/2006, but you lose that time constraint. Well if I search for that in my spreadsheet, i have 24 cells that meet that criteria. Anywhere from 12AM to 11PM. But I may want the one for 11PM... Also, since find searches from top to bottom, I always retrieve 12AM since its the first hour of the day. I apologize for my wordiness, but It is kind of a complicated matter.
I'm using the Find function in VBA on a column of data, but the range is being set to Nothing if the data item I'm looking for happens to be in a row that is hidden at the time. How do I set the find to look in all rows, hidden or not? Can this be done without unhiding all the rows first?
I've been trying to put together a VBA code that allows me to find a number between 1000 - 10,000. I am able to find any number below 999 but can seem to find anything above 1000. I've been using the following ....
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
I am sure this may have been asked before ... but couldnt find it on a search
I have a number of userforms in an excel database, all with add, edit search capabilities.
Several of the textbox's have a time format, when I enter the time it is shown in hh:mm format, it is stored on the spreadsheet in the same format. but if I use the search function to recall a record and display it on the userform, to allow ammendments the time is always shown as a decimal. Can I set it to display the time as entered.
An example of some coding for a text box is shown below
Private Sub TxForTime_AfterUpdate() TxForTime.Value = Format(TxForTime.Value, "hh:mm") End Sub
'*This is to the row that contani the target lRow = Worksheets("sheet3"). Range("A3:A3000"). Find(What:=code, LookIn:=xlValues, _ LookAt:=xlPart, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlNext, _ MatchCase:=False, _ SearchFormat:=False).Row
it gives me this msg : subscribpt out of range
here is the whole Private Sub Worksheet_Change(ByVal Target As Range)
Dim code As Variant Dim lRow As Long Dim color As Range Dim discrib As Range Dim price As Range Dim myrange As Range
I have a range of amounts in Sheet 1 from F7:Q13 and im using the find method to search for the active and non active values in the cell. Which means that if there's a value in the cell it will transfer the value in Sheet 2, if nothing is found in the cell the cells in Sheet 2 will return as nothing or null.
I think the problem lies on the FindWhat variable. Im getting a compiled error which im not sure what is it.
I've attached the spreadsheet so you get a better idea of the problem that i encountered.
I have several hundred rows of date/times which I need to modify just the date (for example 08/23/2007 11:00 to 08/15/2008 11:00). Each row may have a different time so it is just the date I'm targeting for change.
If I manually use the replace dialog, replacing 08/23/2007 with 08/15/2008 works just fine. However, if in code I attempt to use the Cells.Replace function, it does not locate any data to change.
I have found that if I search for the string 8/23/2007, the dates are located and changed. Only when I attempt to find the fully formatted date 08/23/2007 does the function fail.
Column J is the date opened. Column T is the date closed. Of course, column T will have no date if still open. Column K and O may or may not have text. Column AF6 has a date, mm/dd/yyyy, that is entered/changed depending on the search.
What I need is a formula in AF8 that will look at the date entered in AF6 and find a match in columns J and T. Then it will look to see if there is text in K and O. If so, populate AF8 with that text.
I m Trying to add some features to it and run into an issue. Here are the fields we are working with!
A1= 13:30:00 17/12/2008 (in other words 1:30pm on date given) - Need to know proper cell number format!!
B1= 23:00:00 (this represents 23 hours) - format for cell is [h]:mm:ss
C1= Unknown function (This field is my problem!!) Answer here SHOULD be "14:30:00 16/12/2008"
I need a function for C1 (using A1 and B1) that will give me the time and date 23 hours earlier or however many hours:mins:secs is specified in B1! Also need to know what number format to use for both A1 and C1
I'm trying to use this Find Method and combine it with a countif or loop. Something that will count a number of occurences of a unique type of character. I'm looking to find all "F" characters in Bold, Italic and Size 16. Here's my find code that I'm trying to use. I can get it to work by itself but not along with a countif or loop.
Sub count_4() Dim r As Range Set r = Range("A1:A6") With Application.FindFormat.Font .Bold = True .Italic = True .Size = 16 End With r.Find(What:="F", LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, searchformat:=True, MatchCase:=True).Activate End Sub
I just installed Office 2013 Pro. In my Office 2010 Additional Controls toolbox, the control toolbox has a Date and Time Picker(DTPicker1) . I cannot find it in the Additional Controls toolbox in Excel 2013. I certainly hope they did not choose to not make it available in Excel 2013 - this is an extremely important control for my Excel spreadsheets as it allows inputting a date range on a userform with DTPicker1 and DTPicker2 and generating reports using VBA in conjunction with Autofiltering code on a Generate Report button.
In the included workbook I've got a sheet that needs to be updated every time a userform is completed. So I intend to run a macro after the data is entered to find duplicates, and delete the older row.
so, column A must match then column C must match then look in columns AK & AL to find the newest entry to keep. I also need to delete any rows where column A is empty(light Green), no matter what other columns have data.
In my example sheet all the yellow's match for column A but the bright yellow's are the only "keepers", because one has a different number in "C" and the other is the newest.
Also remember that this is just part of a much bigger, multi-sheet book so I will need to I.D. this sheet in the code.
I am pasting a large amount of data from a sql server query into excel. There is multiple tables output in each query. Some of the data is date/time and excel is formatting all of these cells to time. The date/time cells to not neatly line up in any row or column, so I cannot just format any give column or row. I need a macro that will find all of the cells that are formatted as time and change them to a date format.
i am trying to find the time difference between two cells and present the date in a third cell. The data in the cells are in a non standard date/time and i need to create a special format i think. The cells look like this.
fldcollected fldaccepted Type Time between being received by database and eccepted
I have a large data set which contains four coloumns: Supplier, Supplier number, order number, and date/time of delivery. The date/time coloumn is formatted as YYYY-MM-DD HH:MM with a 24h time notation. What i want to do is to find deliveries that occurs within 1 hour and that are from the same supplier. So i basically want to group (?) the data with regards to the suppliers and then, within these subsets, check for date/time entries that occurs within 1 hour from each others by "reading" each date entry and compare it to the following one(s) (and maybe stop comparing when the 1 hour interval is passed)?
Furthermore, even if this one might be very hard, it would be good if i could make sure that the entries that are "tagged" as within a 1 hour interval, wont be used as basis for a new interval or be included in other intervals.
The result i am after would be number of 1 hour intervals for each supplier and the number of entries in each interval.
My workbook contains a input sheet and multiple sheets with the data I compile. In the examples I provided, on each sheet "Server Name" is unique data to each sheet. I would like to have the ability on the Input sheet to click one of the server names and that take the user to the record on sheet 2. Not sure iif I need to be looking at a Macro or a formula to do this.
I am attempting to pick up a date with time entry on a worksheet and place it into a TextBox on a UserForm. Format on the sheet is mm/dd/yyyy h:mm AM/PM. The UserForm is placing the value as mm/dd/yyyy 12:00 AM. here is the
Private Sub UserForm_Initialize() If Not Range("dDate").Value = "" Then TextBox2.Value = Range("dDate").Value TextBox2.Text = Format(DateValue(TextBox2.Text), "mm/dd/yy h:mm AM/PM") Else TextBox2.Value = "" TextBox2.SetFocus End If End Sub
"dDate" is the named range where the date is sitting. The format is also set on the TextBox2 exit event. Can anyone see why only the date portion is being transfered with the default 12:00 AM for no time component of the value?
Private Sub cmdShowdata_Click() Dim Tgt As Worksheet Dim Source As Range Dim wbSource As Workbook Dim cel As Range Dim rng As Range Dim c As Range Dim i As Long Application. ScreenUpdating = False Set Tgt = ActiveSheet Set wbSource = Workbooks.Open("C:Documents and SettingsDesktopStaff Recoed 2") Set Source = wbSource.Sheets(1).Columns(1) With Tgt .Activate 'clear old data Range(.Cells(3, 2), .Cells(200, 5)).ClearContents ' Loop through names in column A For Each cel In Range(.Cells(3, 1), .Cells(Rows.Count, 1).End(xlUp)) If Not cel = "" Then...................
The above vba command which is extract the data from the Other workbooks. It looks for the "Staff 001", "Staff 002"...these parameters to transfer the data to the worksheet. But, the "Staff 001" data must appear twice in each workbooks. If i use the above command, i only can extract the FIRST "Staff 001" average data. But SECOND "Staff 001" average data cannot extract. I know it may be use FindNext method to do this but i am not sure how to write it
I have a macro on a workbook that when I hit the button it asks for the date of a register sales journal that I want to import. Then it asks for the cash in drawer amount. Then it puts in all of the data into the sales spreadsheet. Now I want to use the on time method to bypass the button and the entry of the date, and even get rid of the cash in drawer. I want to make the macro run at 9:30 every night. I want it to use the date on the computer to tell it which date to find? Here is the code I'm using! button macro
' Button2_Click Macro
Sub Button2_Click() ImportData End Sub
Here is the main macro Function FileExists(sFile As String) As Boolean Dim iLen As Integer On Error Goto NO_FILE FileExists = True
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...
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:.....................