- Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
- Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!
Reply to: Excel Wierdness
Collapse
You are not logged in or you do not have permission to access this page. This could be due to one of several reasons:
- You are not logged in. If you are already registered, fill in the form below to log in, or follow the "Sign Up" link to register a new account.
- You may not have sufficient privileges to access this page. Are you trying to edit someone else's post, access administrative features or some other privileged system?
- If you are trying to post, the administrator may have disabled your account, or it may be awaiting activation.
Logging in...
Previously on "Excel Wierdness"
Collapse
-
yeah. or just use a string and just increment that part after the last '.'Originally posted by Platypus View PostPersonally, I wouldn't use floating point numbers at all (because this can happen even with Doubles), I'd keep the version as an integer, adding one each time and sticking in a dot as needed.
Leave a comment:
-
Personally, I wouldn't use floating point numbers at all (because this can happen even with Doubles), I'd keep the version as an integer, adding one each time and sticking in a dot as needed.Originally posted by pjclarke View PostNo, i didn't know that actually. Thanks.
Leave a comment:
-
I guess you probably know that 0.1 doesn't have an exact binary floating point representation, so arithmetic with such numbers can result in this. This is why, for example, you'd never code a test for equality on the basis of ==. So, in this case, you'd just have to round.Originally posted by pjclarke View PostSimple macro to save a copy of a spreadsheet, and increment version number by 0.1
Excel is adding spurious numbers onto the version number. E.g. If I start with 0.1 after the macro I get not 0.2 but 0.200000002980232 in the cell.Code:Dim Frontsheet As Worksheet Dim CurrentVersion As Single Set Frontsheet = Worksheets("Dashboard") CurrentVersion = Frontsheet.Cells(5, 4).Value CurrentVersion = CurrentVersion + 0.1 ActiveWorkbook.Save ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\MPR Mapping" & "." & Format(CurrentVersion, "00.0") & ".xlsm" Frontsheet.Cells(5, 4).Value = CurrentVersion Frontsheet.Cells(6, 4).Value = Now()
Which in this context is annoying, as the version number gets written to some files generated by the sheet and it looks wierd, but I can easily imagine some other applications where it could be a critical fault.
Changing the type of CurrentVersion to Double cures it but I'd like to know whats going on. Is it a bug in VBA?
Excel 2007, if thats relevant.
Leave a comment:
-
Excel Wierdness
Simple macro to save a copy of a spreadsheet, and increment version number by 0.1
Excel is adding spurious numbers onto the version number. E.g. If I start with 0.1 after the macro I get not 0.2 but 0.200000002980232 in the cell.Code:Dim Frontsheet As Worksheet Dim CurrentVersion As Single Set Frontsheet = Worksheets("Dashboard") CurrentVersion = Frontsheet.Cells(5, 4).Value CurrentVersion = CurrentVersion + 0.1 ActiveWorkbook.Save ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\MPR Mapping" & "." & Format(CurrentVersion, "00.0") & ".xlsm" Frontsheet.Cells(5, 4).Value = CurrentVersion Frontsheet.Cells(6, 4).Value = Now()
Which in this context is annoying, as the version number gets written to some files generated by the sheet and it looks wierd, but I can easily imagine some other applications where it could be a critical fault.
Changing the type of CurrentVersion to Double cures it but I'd like to know whats going on. Is it a bug in VBA?
Excel 2007, if thats relevant.Tags: None
- Home
- News & Features
- First Timers
- IR35 / S660 / BN66
- Employee Benefit Trusts
- Agency Workers Regulations
- MSC Legislation
- Limited Companies
- Dividends
- Umbrella Company
- VAT / Flat Rate VAT
- Job News & Guides
- Money News & Guides
- Guide to Contracts
- Successful Contracting
- Contracting Overseas
- Contractor Calculators
- MVL
- Contractor Expenses
Advertisers

Leave a comment: