|
|
||||||
|
#1
|
|
|
|
|
Excel 2000
I have two files, one master and one created by opening a text file. The master file has a list of unique product codes and descriptions in two columns, the text that is opened has the product codes and I add during the opening process a look up to the product code to return the product description, this all works fine. The text file after opening is 7 columns, product code, product description and 5 columns of numbers. What I need to do is format the cells (numbers) in the last 5 columns of the newly opened text file. My thoughts are to add a third column to the master file whereby I'll have 3 columns: product code, product description and number format, in the number format column I would format the cell with the required number format. My issue is, how using VBA do I format the cells in the newly opened text file where the product code matches that of the corresponding product code in the master file. The text file can have many of the same product codes and in some instances, not all of the product codes. I had also thought of Conditioning Format but alas, this doesn't cover number formatting. Any pointers, snippets of code most welcome. Thanks, Rob |
|
|
|
#2
|
|
|
|
|
The Conditional Formatter add-in,
[url down], handles cell formats as well as the usual CF attributes. |
|
#3
|
|
|
|
|
Bob,
Great Add-In. However, not allowing the formula Vlookup to look up product code and apply number format. "Bob Phillips" <bob.phillips> wrote in message news:3988 [..] |
|
#4
|
|
|
|
|
Rob,
Sorry, not exactly sure what you mean? It would be the add-in itself that allows the number format. So, if you had a VLOOKUP in the cell, you would apply the add-in just like normal CF to test the value, and set the format accordingly. |
|
#5
|
|
|
|
|
Thoug i did not understand fully when exactly you want to format the cell,
I assume that if the VLOOKUP succeeds you want to format that 5 column, else you want to leave it as it is. I also assume that presently you are doing VLOOKP in the sheet itself with standard VLOOKUP formula entered and drag-copied? If this is true then where the VLOOUP did not succeed it will show "N#A" So you can write code like below For each c In Workbooks("Text").Worksheets("xyz").Range("B:B").C ells If Not c.Text = "N#A" Then 'note: it should be c.Text not c.Value c.Offset(0,5).NumberFormat = "whatever" End If Next Ofcource you can refer to the column until the last used row, I just skipped that part. You can put it in workbook open event or make it a module macro and run whenever you feel. But in case you are doing it different way and "N#A" does not appear in the cell ( many times I suppress "N#A" adding IF( ISERR(VLOOKUP .. ) Then you can make code in VBA to check if VLOOKUP is an error and if not then format the number. e.g.: Dim c On Error Resume Next For Each c In Workbooks("Text").Worksheets("xyz").Range("A:A1") If Not IsError(Application.WorksheetFunction.VLookup _ (c.Value, Workbooks("Master").Worksheets("xyz") _ .Range("A:B"), 2, False)) Then c.Offset(0, 6).NumberFormat = "whatever" End If Next c Note: I didn't refer to the ranges properly in above example. Sharad "Rob" <anonymous> wrote in message news:2676 [..] |
|
#6
|
|
|
|
|
Bob,
I've tried again, this time adding a Vlookup column in my opened text file that returns 2, the CF add-in is set up likewise to format the cell to 2 decimal places. However, there are c. 200 rows and using the CF add-in copy and past function, the reference is always to the initial formula and as such would take forever to setup each cell condition. That is unless there's a VBA method of setting up for each cell. Regards, Rob "Bob Phillips" <bob.phillips> wrote in message news:1084 [..] |
|
#7
|
|
|
|
|
Sharad,
The last example looks to have some possibilities, I'll set up and test in my files. Now you've given the idea, I recall code CASE where I could set up the criteria. Thanks, Rob "Sharad Naik" <sharadnaik> wrote in message news:1296 [..] |
|
#8
|
|
|
|
|
Rob,
There is, the same as with normal CF. Select all the cells, launch CFPlus, and then reference just the first cell in the selection for the CFPLus formula. |
|
#9
|
|
|
|
|
Bob,
Thank for that CF Plus does the job. I've recorded a macro which open the CF application but is there any code that would for example after selecting the range enter the formula =C3=2 and number format 2 decimal places? Regards, Rob "Bob Phillips" <bob.phillips> wrote in message news:2192 [..] |
|
#10
|
|
|
|
|
Rob,
No there isn't I am afraid. Recording doesn't record the actions in a dialog, and this is all dialog. But it shouldn't be necessary, as it is a once-off action to select all the cells and add the formula and format. |
|
|
| Similar Threads | |
| format cell custom Number format what custom number format can I use to be % if there is a number but General if the is not. So 0.02 will come as 2.0% But 0 will come as nothing Thanks, Dan |
|
| Number Format based on Cell Content Thanks in advance, been looking at other post and couldn't quite get it to work. So what I need is such; Cell A1 = "Number" then cells A2 through A14 are formatted as... |
|
| Extract number from text string based on number's format? Hey all - I'm trying to extract a number from a text string. The text string varies in length and contents. The only thing that uniquely identifies the data I need to extract... |
|
| Format a cell with a custom number format I would like to type in a number and if the number meets a certain criteria, return that number with a unit identifier. I.E. a number "A1<= 9.9" returns "value for A1GHz"... |
|
| Set number format based on cell contents I have a cell B3 which shows a Data Validation list of £ or % Having selected £ or % in B3 the user then enters a number in C3. I want to have cell C3 formatted to... |
|
|
All times are GMT. The time now is 10:01 PM. | Privacy Policy
|