Alan1234 Posted October 1, 2017 Posted October 1, 2017 After using Int(expression) message box shows a number, for example the number 6. How can I show a leading zero to represent the Tens digit, for example the number 06?
water Posted October 1, 2017 Posted October 1, 2017 Try function StringFormat. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
Alan1234 Posted October 1, 2017 Author Posted October 1, 2017 If I use StringFormat won't that make it a string? I want the result to be a number with a leading zero. Does StringFormat do this?
Developers Jos Posted October 1, 2017 Developers Posted October 1, 2017 Yes it makes it a string as values never have leading zero's. So what are you trying to solve here? Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Alan1234 Posted October 1, 2017 Author Posted October 1, 2017 Just trying to show an integer below the number 10 with a leading zero to represent the Tens digit or hundreds digit like in Excel. From your comment I take it that AutoIt cannot do this.
water Posted October 1, 2017 Posted October 1, 2017 The internal representation of a number and the format when displaying this number are two different things (as they are in Excel as well). Use StringFormat before you display the integer. This does not affect the internal representation. My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
AspirinJunkie Posted October 1, 2017 Posted October 1, 2017 $d_Number = 6 $s_Number = StringRight("00" & $d_Number, StringLen($d_Number) > 2 ? StringLen($d_Number) : 2) MsgBox(0,"", $s_Number) $d_Number = 15 $s_Number = StringRight("00" & $d_Number, StringLen($d_Number) > 2 ? StringLen($d_Number) : 2) MsgBox(0,"", $s_Number) $d_Number = 115 $s_Number = StringRight("00" & $d_Number, StringLen($d_Number) > 2 ? StringLen($d_Number) : 2) MsgBox(0,"", $s_Number)
Alan1234 Posted October 1, 2017 Author Posted October 1, 2017 (edited) Agreed! Thanks for your comments. Aspirinjunkie: Thanks for example scripts. Edited October 1, 2017 by Alan1234
Gianni Posted October 1, 2017 Posted October 1, 2017 (edited) using StringFormat (as already suggested in post #2) Local $iWantedDigits = 2 ; <-- choose wanted length For $i = 0 To 15 ConsoleWrite(_Leading0($iWantedDigits, $i) & @CRLF) Next ; returns the passed number formatted ; with a length of $iNrDigits with leading zero Func _Leading0($iNrDigits, $iNum) Return StringFormat('%0' & $iNrDigits & 's', $iNum) EndFunc ;==>_Leading0 Edited October 1, 2017 by Chimp llc 1 Chimp small minds discuss people average minds discuss events great minds discuss ideas.... and use AutoIt....
AspirinJunkie Posted October 1, 2017 Posted October 1, 2017 omg - i mixed up two different cases (leading zeros vs. trailing zeros). Yes of course - stringformat is the preferred choice for the case of leading zeros. @Alan1234 Don't be confused with my "solution" - use stringformat as already mentioned.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now