Only Run Code Based On Criteria
Aug 16, 2006The problem is this that I have a module and I want to implement a condition that if I press a specific button then run whole code except a specific line.Is this possible?
The problem is this that I have a module and I want to implement a condition that if I press a specific button then run whole code except a specific line.Is this possible?
I am after a VBA code that I can use to populate a fax template based on criteria's
Basically I have records which are being logged throughout the day via a User form and sometimes there may/maynot be a charge. the user decides at the time. The column is named "to be charged" and is filled with either Yes/ No.
I need to be able to select the date to print or Just the same day date and print all faxes' that have "Yes" for charge This way all the information for each fax is populated and the user can just print.
and if possible mark a Colum non the master sheet as printed with a X or something
I need a macro that will search data from a range of cells in one column for multiple criterias and them copy the entire rows to a new worksheet.
Example I have a list of group names
Network
Telcom
Help Desk
BA
Network
I only want to choose all Network and Telcom rows copy to another worksheet.
Does anyone have a VB macro that will copy information from a cell (this will be variable based on criteria) and paste it into the middle of another cell that contains HTML code?
The criteria for the copy/insert/paste is that the information in the cell that is to be copy/inserted must match up with the correct number (part number).
I hope this makes sense. I have attached an example spreadsheet. (Pictures are worth 1000 words. ) Hope someone can help. I checked this site and couldn't find anything that was solved that matched the specifics.
1 . Now i need amount to be written in sheet 1 from taking value from sheet2 based on the code. The code & description column has the same value. but it will be placed in different order
Ex:
the amount should get filled up only for the status yes & no . others it should return null.
i m trying to use the sumproduct formula, and OR but i cannot seem to get this right! =Sumproduct(--(A1:A10="Yes"),--(OR(B1:B10="Yes",B1:B10="Mayby")),C1:C10)
I have also tried Array Formula as follows; {=SUM(IF(A1:A10="Yes",IF(OR(B1:B10="Yes",B1:B10="Mayby"),C1:C10)))}
I have also used UDF to for the sumproduct, but cannot make that work! keep giving me value message
Function
Function Customer(Service as Range, Outcome as String, Service2 as Range, Outcome2 as String)
Customer = Sumproduct(--(Service = Outcome),--(Service2 = Outcome2), Result)
-Didnt get thru this bit to start building on the Function! keep giving me #Value!
I'm trying to write a VBA script which will delete all rows in my Excel spreadsheet where Column I (which contains a status code) does not contain the word "Completed".
At the moment, I'm doing this the other way round: my script is able to search for entries in Column I which contain the status codes "Pending", "Awaiting Authorisation", "In Progress" etc and delete them. The idea is that when all those rows are deleted, I'll only be left with rows which have a status of "Completed". This works fine at the moment. However, the concern is that if a brand new status code is added to the data file, my script would be unable to pick it up and delete it. This is a small sample of the code I'm currently using (which deletes all the rows with statuses other than Completed):
I'm starting a dashboard, where on the front page I have two combo boxes on the left, and three empty fields to the right. I'd like the three fields to the right to auto-populate table-based values depending on the chosen criteria from BOTH fields (by store and month/date). I've attached a sample of what I've got so far. I've only provided three tables for this example, and I have a table with the same column/row titles for each metric and I have three different metrics I'd like to auto populate: COGs, Sales, and GM% or in the example, metric 1, metric 2, metric 3. No pattern in the table values, just wanted to populate the fields quickly. All fields are organized by store/month-date and I've set up a link to my combo boxes on a calculations tab.
View 2 Replies View RelatedI need a simple VB Code which will check the vale in cell A11 in a closed workbook.
If A11=Lunch insert a blank row otherwise do nothing
On worksheet A I have a series of dates and a location:
Date Location
05/07/2014 Zoo
09/07/2014 Farm
12/07/2014 Cinema
This is a series of trips that are planned to occur. In order to occur there is a criteria which is recorded seperately and is coded as '1' = criteria were broken and '2' = criteria were not broken. The criteria for each trip must be met from the date of the last trip until the day before the next trip - so using the above example, to get the farm, the criteria must be met from 05/07/2014 until 08/07/2014. In practical terms, there must be no '1' in the desingated column that records the criteria - fairly simple.
But there is an allowance of one case of the criteria being broken, which is recorded seperately ('1' = allowance used and '2' allowance not used). This allowance resets after every potential trip (whether the trip was earned or not). This is all displayed as a 'status' on Worksheet B.
So in terms of practical VB code I'm looking for:
-Start with row A on worksheet A - copy the date and location onto worksheet B (the next trip)
-On opening the file, take the date of the last trip (or in the case of the first trip, the designated start date)
-Look into Column J (between date of last trip and date of next trip) to see if allowance has been used (a '1')
-Look into column K (between the two dates) to see if the criteria has been broken on more than one ocasison (two '1')
-OR if possible - compare column J and K (between the two dates) to see if a criteria was broken AFTER the allowance has been used
Then, look to see if today's date is the same date as the next trip, if it is, move the reference down to the next rown (A3, A4, etc) on Worksheet A so that the status now reflects the next trip, and the code now looks between the two new dates.
How to do most of it, but its the comparing between two dates and the different criteria that is stumping me.
In the first tab of my workbook I have a data table. In K2 down of that tab is a list of names, in D2 is their form, in I2 is the Type (there are 3 Types which start with (R), (P) or (S), in J2 is the points score associated with the Type and in H2 is the date they received the points.
For each name in the table I need it to sum the running points totals for (R), (P) & (S) Types and when they reach the minimum points thresholds below I want it to record the earliest DATE this threshold was achieved.
School Award: (R) = 20, (P) = 40, (S) = 20
Bronze: (R) = 40, (P)=80, (S)= 40
Silver: (R)= 60, (P)=120, (S)= 60
Gold: (R)= 80, (P)=160, (S) = 80
The output should look like:
Name
Form
School Award
Bronze
Silver
Gold
Anders Peter
7BN
20/9/13
15/11/13
Ball Jim
7BN
20/11/13
Carter Mark
7BN
19/9/13
8/11/13
24/11/13
Why I get a debug message on the following piece of code
[URL]
VB:
Sub Macro2() '
' Macro2 Macro
' Macrorecorded 10/12/2013 by nathajos
'
[Code].....
How do I make this formula include searching for "ann" and "john" (in separate cells)?
View 2 Replies View RelatedThe code below deletes all empty cells from column F starting from row 2 till last data cell in column A.
However what to change in it to do exactly the same except for empty cells, look out for "0" values...
Code:
Sub test()
Dim LR As Long
LR = Range("A" & Rows.Count).End(xlUp).Row
Range("F2:F" & LR).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
I'm looking to use Autofilter and current region to select each persons data and paste to a new sheet.
The trouble is i'm not sure how to change the criteria name in the loop
e.g first name in list is Jack, next is John
Selection.AutoFilter Field:=1, Criteria1:="Jack"
I'm trying to program a macro that filters out codes in an autofilter list. There are about 40 codes in total, however I only want excel to display 3. The current script I am using is below. I know excel lets you filter for 2 criterias in this format, however is 3 or more too much? What would be the best way around this problem?
Selection.AutoFilter Field:=4, Criteria1:="=COR", Operator:=xlOr, _
Criteria2:="=REM", Operator:=x1Or, _ Criteria3:="=REA"
I recorded some code and cleaned it up to apply a conditional format
Sub condi_format_I()
Dim wbBook As Workbook
Dim ws As Worksheet
Dim rng As Range
Set wbBook = ThisWorkbook
Set ws = wbBook.Worksheets("Summary")
Set rng = ws.Range("C4:P52")
With rng
.FormatConditions.Delete
.FormatConditions.Add xlExpression, Formula1:="=C4<0"
.FormatConditions(1).Interior.ColorIndex = 45
End With
End Sub
I would like to apply a custom color index to all cells in range C4:P52 if the value is less than zero.
But when I execute the macro, many cells receive the custom format that do notr match the custom format. Other cells that should receive the custom format do not
modify the delete row macro below. Unfortantely this is where my brain cell sometimes dies and the easy answers are as apparent as they should be...
Ideally what I am looking to do is have a growing list of "IDS" in one worksheet (call it delete IDS) that will be used to loop thru the sheet named "NRs" and delete the the IDS from that worksheet.
Sub DeleteNames()
'using set column
Sheets("NRs").Activate
Dim RngCol As Range
Dim i As Range
Set RngCol = Range("A:A")
For Each i In RngCol
If i.Value = 156916233 Or i.Value = 600093 _
Or i.Value = 156970571 _
Or i.Value = 156948409 Or i.Value = 30560 _
Or i.Value = 163841503 Then _
i.EntireRow.Delete
Next i
End Sub
What I have is a workbook where I have to filter on a column called "Code" in a worksheet called "Current" and search for varies criteria and then copy these filerted rows and paste into a worksheet called "Past" and then delete the orginal rows form the "Current" tab.
e.g. filter on a column called "Code" and filter on the criteria that match "Monday", "123" and "Customer Accepted" and paste at the bottom of the "Past" tab and then delete from the "Current" tab. A message should then be displayed saying "Data Transferred OK" with the curser then highlighting "A1" on the "Current" tab.
The only cavat is that the code may find none, some or all of the required criteria, however, in the event of finding no matching data then a message should then be displayed saying "No Data Found" with the cursor then highlighting "A1" on the "Current" tab
As I have to repeat this to filter on various columns for various criteria I intend to modify the code accordingly, however, in once instance I will have to filter on a column called "Code" and filter on the criteria 1,2 and 3 etc but then I have to do second filter on column called "Code Extra" and then do a filter on the criteria 4, 5 and 6 so the additional code would also be good.
HTML Code:
Sub CopyTimeColumn()
Dim tFIND As Range
On Error Resume Next
With ActiveSheet
Set tFIND = .Range("1:10").Find("Time", LookIn:=xlValues, LookAt:=xlWhole)
If tFIND Is Nothing Then
[Code] ............
This code searches the "Time" Column in first ten rows and copies it to another sheet...
If I have encountered with such a column whose title is "Time in seconds" then it will not search this column...What i want is the modification of this code such that it can detect column which contains any part of "Time" word in it ...
Suppose I have a list of data in which I want to retrieve or extract specific row from the list as per operator name & relative comments (Done or Not Done) from the given list as per the operator name, now what I want that my VBA code should be able to get the operator name & the relative comment data from the list according to the operator name in a new sheet. My data keeps changing so I need a code which can work on any size of the data. I need to retrieve only operator name & Comment column in a new sheet to run my Pivot table.
My Excel data is something like in the attachment & the result I want through VBA Code.
I have a worksheet with several columns (30+). One of these columns is "Date Opened". This "date opened" column can have dates as early as 01/01/89 and as recent as today.
Can a macro be made that does this
1. Data/Sorts the whole worksheet by the "Date opened" column
2. Brings up a message box in xx/xx/xxxx where format saying "Please enter the earliest date opened you would like to use, all other rows will be deleted"
3. Do just that, delete all rows that have a date earlier than the date entered in the message box.
So if the date of 01/01/2009 were entered into the message box, the macro would delete all dates in the "Date Opened" column that were older than that date.
And then, continue on with the rest of the sub, if neccessary.
I have data in cells B2:E2 and this can go down 100+ rows.
In column B i have invoice numbers but some cells contain the word "Deposit".
I have sorted this data so that the invoice numbers appear first and then all the Deposits.
I need a code to find the first instance of the word "Deposit" and to insert a row so that all the invoices and Deposits are seperated by a single row.
If Sheets ("Sheet1").Cells (i ,"D").Value="January" Then ...this is my code line.I would like to replace my criteria"January" with a listbox or combobox with months names so that my out put results vary according to my list selection from the combobox., so that I need not to change or edit my criteria value every time according to my requirement.Is it possible in vba?
View 4 Replies View RelatedI looking for a solution to change a Access Query Criteria using a VB code in Excel, without opening the Access DB and changing the criteria manualy?
My normal Job is it:
1) I Work all the time in Excel
2) At the end of the work in Excel, I need to open Access
3) Open a query (Called "MyQuery")
4) Change one parameter the Date: Between 01/10/2008 and 30/10/2008 (This for each month)
5) Run the query
I looking to get rid of points 2) to 5) by replacing with a Command button on an Excel sheet
Sub Change_Criteria_And_Run_Query()
Dim mydbase As Object
Set mydbase = CreateObject("Access.Application")
mydbase.OpenCurrentDatabase ("C:My doucmentsDB1.mdb")
mybase."MyQuery"."Date Criteria" = Between (Worksheet("Sheet1").Range("A1").value) and (Worksheet("Sheet1").Range("A2").value)
>>>>>The above line of code I have problems to get right!
mydbase.DoCmd.RunMacro "MyQuery"
End Sub
Cell A1 is HEAT_CODE
Cell A2 is W5H
In cell
=DMIN(Database,"Cost",A1:A2) return the proper value
I need something like the following so I can use fill down.
=DMIN(Database,"Cost","HEAT_CODE"=A2)
the above returns #VALUE! error.
VB:
Range("a1:n" & row_end).AutoFilter 13, "ABC"
If the value "ABC" not found in table, it shows error msg, In my file data="ABC" avail, sometimes not.
I have a challenge I haven't quite been able to figure out:
I need a 6 digit trace code to be automatically generated for each job based on the date, the product type and the job number.
The first 2 digits on the trace-code are alphanumeric and the sequence for each job is AA, AB, AC etc.
The last 4 digits are a date code (YYWW.... two digits for the year and two digits for the week number).
The criteria is that multiple jobs of the same product type within the same work week must not have identical trace codes. So Job 1 gets "AA" plus the date code... Job 2 gets "AB" plus the date code, etc. If Job 3 is done in the next work week, it cycles back to "AA" and gets the new date-code.
Generating the date-code was simple enough, but coming up with a function or rule to assign the two-digit alpha has been a challenge that I have not been able to beat.
Below is an example of how the Trace-code column should work....note that Trace code on one product type might be identical to the trace code on another product type.
A
B
C
D
1
Date
Product type
Lot number
Trace code
[Code] .........
I can't seem to find the answer to this. In VBA, how do you Find a cell or row based on multiple criteria? All I need is to find it's location. If it helps, here's an example:
Sheet 1 contains source data:
Date Name Time Complete
Sheet 2 contains an interactive worksheet using this data. On Sheet 1 there's an entry: 9/12/2006 George 03:30 PM
Sheet 2 displays those records with adjacent cells for entering data. When data is entered, I need the system to go back to Sheet 1, find the entry that matches this one, and put an "x" in the Complete column.
I have developed the following code to colour cells dependent on reference to adjacent criteria (in Col D).
Is there anyway I can simplify this code to avoid three separate "For each" statements?
Code:
For Each c In Range("E12", Range("e" & lastrow))
If c = "" And c.Offset(, -1) "" Then
c.Interior.ColorIndex = 7
[Code] ..........