Home |
Search |
Today's Posts |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Next to the cell containing
=IF(ISODD(SHEET1!J3),1,0) put in =ISNUMBER(SHEET1!J3) It will tell you whether the cell is definitely a number. There is no reason for isodd to return #value unless it isn't, or perhaps your code causes some error in the calculation process and calculations do not complete. the code I provided was in answer to your second question. I has no bearing on the #Value problem. -- Regards, Tom Ogilvy "Barry" wrote in message ... Tom, Many thanks for the reply. Not quite sure what you mean by * next to the isodd formula put in formula _=isnumber(data)_* I need to check how many numbers in SHEET1 J3:Q3 are ODD and the formula I'm using is *=IF(ISODD(SHEET1!J3),1,0)* and so on for K-Q So where does =isnumber fit in?[ BTW J3:Q3 are definitely numbers] I've also modified the macro as you suggested but the =IF(ISODD....)s still revert to a VALUE! error. There's also another problem that's developed in that whilst running the macro if I press ESC and choose END the macro restarts itself. The only way I can stop it is to choose DEBUG and then quit the debug process. Regards Craig "Tom Ogilvy" wrote in message ... Next to the isodd formula put in a formula =isnumber(*data*) Sub counter() Dim C As Integer With Worksheets("Sheet3") Do Until .Range("c8").Value = 7 Calculate C = C + 1 .Cells(8, 4) = C Loop End With End Sub Everytime you enter a number in C8, the workbook should calculate if calculation is set to automatic. -- Regards, Tom Ogilvy "Craig" wrote in message ... I use the following macro in Sheet 3:- Sub counter() Dim C As Integer Do Until Range("c8").Value = 7 Calculate C = C + 1 Cells(8, 4) = C Loop End Sub In Sheet 2 I have a set of =If(Isodd(*data*),1,0) and the result of these *If* statements changes the *value =7* parameter in the above loop The *data* are randomly generated variables held in Sheet 1 that need to be re-calculated by the macro until Value=7( note: I only need to re-calc this sheet's data - all other sheets' calcs are based on Sheet 1 values) My problem is that when I run the macro all the =If(isodd(.....)s results in Sheet 2 change to a VALUE! error - even though the data are and remain numerical [ according to Excel Help this can only happen if the *data* are non-numeric] What am I doing wrong ? Should the re-calc be only applied to Sheet1 and how do I do that? Also how do I ensure that only Cells(8,4) of Sheet 3 is written to i.e. if I launch the macro from another sheet its Cells (8,4) is written to. Many TIA Craig |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
ActiveX Control Text Rendering Oddly | Excel Discussion (Misc queries) | |||
isodd formula does nt work. Any support on that. | New Users to Excel | |||
OFFSET behaving oddly | Excel Worksheet Functions | |||
ISODD and EVEN formula | Excel Worksheet Functions | |||
IF and ISODD Formula Help | Excel Worksheet Functions |