Trying To Move My VBA Programming To The Next Level And Use More Efficient Code
Oct 18, 2007
I'm trying to move my VBA programming to the next level and use more efficient code.
I'm wondering if there is a faster way to run the loop below, perhaps removing the 'For c = 2 to LastRow' as it seems a little clunky to me.
For c = 2 to LastRow
If Cells(c, Range("Product_Type").Column) = "" Then _
Cells(c, Range("Product_Type").Column).Interior.ColorIndex = 41
Next c
I've seen a similar thing somewhere where it was all done in one statement without the loop.
View 9 Replies
ADVERTISEMENT
Jan 23, 2013
I have a sheet on the left is a list of document names, next to the list is a hyperlink to the actual document. On the right is a drop down list.
The list contains:
Started
In Progress
Complete
I want each person to be able to use the dropdown list to move to the next level but not be able to go backwards.
Example of how it would work:
A person would click the link to the document and set the status to Started in the drop down.They would read half the document and set the list to In progress. However they would not be able to go back to Started or a blank cell once they have set it to In Progress. The same applies to the next level, if they set it to Complete, they cannot change it to anything. Perhaps before "locking" it as Complete there could be a message box warning that the action is not reversible and giving the option to leave it as In Progress.
View 6 Replies
View Related
Sep 9, 2007
What is the most efficient VBA code for the following macro recorded codes? I wish to write more efficient code versus the lengthy, cumbersome macro recorder code.
1) Macro Recorder Code to Copy One Sheet to Another
Sheets("Data Apple").Select
Cells.Select
Selection.Copy
Sheets("Banana").Select
Cells.Select
ActiveSheet.Paste
2) Macro Recorder Code for Replacement Purposes......................
View 9 Replies
View Related
Dec 29, 2009
following code be write down in more efficient manner :>>>
Range("B3") = Range("L" & Target.Row)
Range("C3") = Range("O" & Target.Row)
Range("D3") = Range("Q" & Target.Row)
Range("E3") = Range("R" & Target.Row)
View 9 Replies
View Related
Feb 23, 2007
Was hoping to get some help with a mini project of mine.. Currently I am looking to create a progress/commission report (pull data from an access dbase) and populating an excel sheet. I can manage to pull in the data fine its just gettting into a format that is the complicated thing. I was hoping that someone might have a few moment to pick thru my code (see attached) and maybe suggest an alternative/more efficent way to do the refreshing.
View 5 Replies
View Related
Jun 29, 2006
Where can I obtain some working examples or explanations as to what, where, when, why, and how these Public and Private Sub are correctly implemented? I see these code used extensively but not sure why it's there yet. A macro which uses a Private Sub is in one of my workbooks. Due the "progress" of things from here I now need to move to the next curios level of understanding Macro and VB coding.
View 3 Replies
View Related
Oct 21, 2006
Is there a way to make the code below more efficient?
My data resides in "Buildings August 2006(2).xls " and I wish to copy some cells to "Backlog Analysis .xls"
'Copy J16 to B5
Windows("Buildings August 2006 (2).xls").Activate
Range("J16").Copy
Windows("Backlog Analysis.xls").Activate
Range("B5").PasteSpecial
I repeat the code above 7 more times to handle J29-B6, J33-B7, J42-B8, L56-B10, L57-B11, L60-B13 and L62-B14.
Is there an Array I can use to encompass all of the copy and paste commands?
This is step 1 of something I am doing for work
Step 2 will be to figure out how to work my way through all of the worksheets in "Buildings August 2006(2). I have seen numerous code examples for this so I think it shouldn't be too hard.
View 5 Replies
View Related
Feb 18, 2009
I am trying to creat a code that with take the value of an active cell and depending on this value will assign a backcolour to a label corresponding to the cell. so far so good.
I then want the code to offset to the next cell in the range read its value and assign a colour to that cells backcolor.
here is an idea.
range("A1").select
for n = 1 to 4
if activecell = "A" then
Label1.BackColor = RGB(0, 0, 0)
else
if activecell = "B" then
Label1.BackColor = RGB(0, 0, 255)
else
if activecell = "C" then
Label1.BackColor = RGB(0, 255, 0)
end if
activecell.offset(0,1).select
next n
Firstly I would like the next loop (refering to A2 in this example) to refer to Label2 not Label1 and so on.
secondly the example would loop through 4 cells in one row (A1:A4) but I would like the code to apply to several rows ie (A1:D4).
so thats 16 cell and 16 labels. I could code this in a very inefficient way but I am sure ther is a simple method.
View 9 Replies
View Related
Apr 10, 2014
Any way of shortening the attached code. The first part 'Sub Loop1()' works great but I can't figure out how to shorten the second part. As you can see the distance between columns is always consistent i.e. add 5 columns to find the next outcome to work out the next result. Ideally I wanted to somehow loop through the next 5 columns again and again until the cell is blank.
[Code] ......
View 2 Replies
View Related
Sep 6, 2006
Although not a complete novice, I am fairly new to EXCEL/VBA.
Is there a script that can be embedded into an EXCEL workbook that checks the Macro security of the PC, and if set to HIGH, shows a message that states that "Macro security is too high to open this workbook".
With security set to high, Excel will open my w/ book, but not run any of my checks that are set in the module. So a "catch 22" really, I need the macros to run to that it is being opened on an authorised computer etc, but if security is set to HIGH, then they don't run, similarly, if I put a macro in to check the macro setting, it won't run unless the security is set to medium.
View 9 Replies
View Related
Dec 3, 2007
In general defining Sheet Level Name Ranges works fine with me, most of the times I use something like shown in the code below.
However, I have discovered that apparently the successfull execution depends on the sheet-name format itself
The code below works perfectly fine with worksheet names like "234", "cas422", etc
but it fails to work with worksheet names like: "C12c", "eh34h4". It seems to me - but I am not sure of being able to generalize this - as if it works when the name contains [numbers][letters] or [letter][numbers], but it fails when it contains a mixture of both like [numbers][letters][numbers] or [letters][numbers][letters] .... in case of a failure of the code, I go into debug mode and simply rename the sheet, then everything's fine again.
Am I the only one to experience such difficulties? (I run Excel 2003 with SP3 on Windows XP) Or would a different code prevent this kind of trouble?
I think, I could write a workround, but before doing so I'd rather like to ask if I am doing something wrong here?
ActiveWorkbook.Names.Add name:=wks.name & "!myTime", RefersToR1C1:="=" & wks.name & "!R1C1:R5C8"
View 9 Replies
View Related
Dec 12, 2006
This may be a bit of a silly question but any assistance would be much appreciated, as I cannot figure out where I am going wrong:
Dim RRR As Range
Set RRR = Range("c3").End(xlDown).Select
What I am trying to do is to create a dynamic range called 'RRR' so that everytime the macro is run, it makes sure that all the data is selected in the column.
View 9 Replies
View Related
Mar 7, 2014
I could get a code to move a row from one area of a worksheet to another area on the same worksheet once a cell is tagged "Paid" via a refreshed macro. The updating data table starts on Row 3 for columns "B" - "R." The paid table starts on row 56 where column "B" always has a date in its cell.
View 7 Replies
View Related
Jul 7, 2008
I have attached a worksheet as my example.
I have been trying to build code and I am a newbie when it comes to this.
I have a sheet that is user entered (Criteria). I need to build a macro/code that says if they choose "Yes" to any of the Products on the criteria sheet, then copy all rows that have an X in them that are in the corresponding column on the Master Template. To make it even more complicated I only want to copy 4 of the columns (ID, Task, Share with Client and Accountable).
I know if they choose multiple columns then I could have duplicate rows, but once all the rows are copied I was going to build a remove duplicates macro. However, if there is anyway of preventing duplicates with the original.
View 13 Replies
View Related
Oct 23, 2009
I need help to get the macros right to do the following that it can not do now:
I would like the user to be able to pause in between input areas and do others things.
Need for the input length to be varible or grow with the information
Are these things possible?
View 11 Replies
View Related
Jun 19, 2008
I have only the basic knowledge of the VBA programming. Are there any books you can recommend?
View 2 Replies
View Related
Mar 28, 2014
I created a outstanding task worksheet in excel and I would like to move the completed jobs from this sheet to the second worksheet titled 'Completed Tasks'. The first worksheet is called 'Outstanding Tasks'.
I came up with a code to do this (see below). As you can see when I type "Y" into column G it moves the row into the second worksheet. It does this; however it puts it to the bottom of the table on the second worksheet where I would like it to be at the top. I also would like it to delete the row once it has moved it does this but then deletes the other row of information above it leaving blank rows on either side.
I simply want a code that moves the row of information to the second worksheet when I type Y into column G and then delete the row without messing with other information around it.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim rng As Range
Set rng = Target.Parent.Range("G5:G1000")
If Target.Count > 1 Then Exit Sub
If Intersect(Target, rng) Is Nothing Then Exit Sub
Select Case Target.Text
Case "Y"
Target.EntireRow.Cut Sheets("Completed Tasks").Cells(Rows.Count, "A").End(xlUp).Offset(1)
Selection.ListObject.ListRows(1).Delete
End Select
End Sub
View 1 Replies
View Related
Jan 15, 2007
the code to get my cursor to move down 1 row or cell without it actually referencing the chosen cell.
View 9 Replies
View Related
Feb 15, 2007
Is there a code to make the Cursor Movement direction to be set to move Left ?
View 2 Replies
View Related
Nov 18, 2012
I am looking for a code to generate a combinations of x numbers taken 5 at the time. t
View 2 Replies
View Related
Jul 30, 2008
how to type a name into one cell and have all the places in a particular range (a1:H12) that displays that name to highlight a color.
View 14 Replies
View Related
Aug 9, 2007
i could create a spreadsheet with two columns one with email addresses and another with a path to an attachment
e.g. column a = example@example.co.uk
column b = c: est.xls
and then for a macro to read my data, and send an email to those email addresses in column a with the attachment of column b
View 14 Replies
View Related
Dec 13, 2008
I have created a userform with text boxes and a list box. I have a few questions. First for the list box. I got the information for my list box through the list box example sheet2!A1:A1000. Is there any easier way ? Next I would like to create a New Command button to create a new record. I decided to just do a clear all textboxes, option buttons ect.. to clear, is there an easier way ? I seem to be looping sort of way when I get to txtissue.Value = "" it than goes to txtIssue_Change()
View 14 Replies
View Related
Dec 15, 2008
I have a base list of numbers on a spreadsheet that represent specific values. For example, Column A has a list from cell 1 to 20 that contains a group of different numbers that all represent credits. Column B also has a list with different groups of numbers that represent debits. Each month I receive a report with a large list of numbers that contain credits and debits. I sort the list and use my base list as a reference to differentiate what groups of numbers are debits and which ones are credits.
I am hoping there is an easier way to do this. My question is, is it possible to use the base list that I have as a template so that the next time I receive a report, I can just copy and paste the numbers onto the template and have them somehow formatted or programmed to reflect their correct code of either debit or credit?
View 9 Replies
View Related
Jun 8, 2006
I need to compare dates in excel (VBA programming). How can I do to Compare two dates. If I wanna know the difference between to dates (days, moths and years)
View 2 Replies
View Related
Jun 21, 2006
I have an excel sheet which has 5 columns & 5 rows.I would like to transpose values in 3rd column to 5th column .But after running my code I am not being able to get the deired output. rectify the error for me?
xlApp = CType(CreateObject("Excel.Application"), Excel.Application)
xlBook = CType(xlApp.Workbooks.Add, Excel.Workbook)
xlSheet = CType(xlBook.Worksheets(1), Excel.Worksheet)
xlSheet. Cells(1, 1) = "NAME"
xlSheet.Cells(1, 2) = "CITY"
xlSheet.Cells(1, 3) = "STATE
xlSheet.Cells(1, 4) = "ADDRESS"
xlSheet.Cells(1, 5) = "PINCODE"
View 9 Replies
View Related
Sep 3, 2013
I have a list of file names in Excel and I need to move the files from one folder into another. Sometimes I'm having to find and move hundreds of files into different destination folders, hence why I would like a macro. My spreadsheet will be something like:
Column A
Column B
Column C
Row 1
File name
[Code]...
View 3 Replies
View Related
Dec 10, 2008
I searched and found a couple of different active.sheet codes but could not get it to work. What I want to do is move the worksheet tab I create in the code below all the way to the end (right) of the worksheet tabs already in my workbook.
View 2 Replies
View Related
Feb 26, 2014
Right now I am at Column D; From E to I columns are hidden in my worksheet and would like to move to Column J.
View 7 Replies
View Related
Feb 25, 2009
I have a small problem that is more annoying than anything else. I have a command button that opens a userform, and the user can select a value and 'OK'. On 'OK', the code runs, however I would like the sheet 'Information' to remain visible until the code finishes and then switch to 'Task Intervals'. There is also a lot of screen flicker, despite selecting it off/on. I have included an Example file so that you can see the problem.
View 3 Replies
View Related