HELLmut Geschrieben 10. Mai 2002 Geschrieben 10. Mai 2002 hi, folgendes problem: was ich bräuchte wäre das erbenis von format(zahl, "000000") nur das anstatt der vornullen blanks angezeigt werden. z.B. zahl = 3 string = "000003" statt dessen hätte ich aber gerne string = " 3" also mit 5 leerzeichen kann mir da wer helfen? Zitieren
HolzOnkel Geschrieben 11. Mai 2002 Geschrieben 11. Mai 2002 ..auch wenn es blöd klingt - schon mal in der Hilfe geschaut? Ich werde aus der VB-Hilfe nicht ganz schlau, aber ich kenn mich mit der VB-Syntax auch nicht aus... kann sein, dass Du da eher was findest als ich. Gruss, der Onkel PS: Vielleicht hilft Dir das bei der Suche: unter VFP heisst der Befehl STRTRAN(). Zitieren
Goos Geschrieben 13. Mai 2002 Geschrieben 13. Mai 2002 Das mit deinen 5 Leerzeichen geht nur, wenn die Zahlen dann auch immer einstellig sind. Sobald es 2 oder mehr Stellen sind hast dann halt trotzem 5 Leerzeichen und dann hintendran noch meherere Stellen. Wenn ich aber mal dumm Fragen darf.......wozu sollen die 5 Leerzeichen denn gut sein? Goos Zitieren
MrsSchluchti Geschrieben 13. Mai 2002 Geschrieben 13. Mai 2002 Hi! Bin mir net sicher, aber probiers doch mal statt mit format mit string = CStr(Zahl) Zitieren
HELLmut Geschrieben 14. Mai 2002 Autor Geschrieben 14. Mai 2002 es sollen natürlich nur 5 leerzeichen sein, wenn die zahl einstellig ist. wenn sie zweistellig ist sollen es vier sein, wenn sie dreistellig ist drei usw... der grund: ich schreibe das in ne datei und die muss nunmal so aussehen, dass diese zahl sechs zeichen einnimmt und keine voranstehenden nullen vorkommen dürfen sondern halt leerzeichen. habs jetzt so gemacht: Function wandleum(zahl, stellen) Dim string1 As String Dim string2 As String Dim i As Integer string1 = zahl string2 = "" For i = 0 To ((stellen - 1) - Len(string1)) string2 = string2 & " " Next i string2 = string2 & string1 wandleum = string2 End Function weiß nicht ob das das eleganteste is, aber es geht... Zitieren
fireworker Geschrieben 15. Mai 2002 Geschrieben 15. Mai 2002 Wie wäre es, wenn Du anstatt der For-Schleife eine Select Case -Anweisung nimmst? Stellen hier: Die länge der Ziffer Select Case Stellen Case 1 String=chr(32) & chr(32) & chr(32) & chr(32) & chr(32) & String Case 2 String=chr(32) & chr(32) & chr(32) & chr(32) & String Case 3 String=chr(32) & chr(32) & chr(32) & String Case 4 String=chr(32) & chr(32) & String Case 5 String=chr(32) & String Case 6 String=String End Select Etwas besseres ist mir im Moment nicht eingefallen. Zitieren
Äxel Geschrieben 17. Mai 2002 Geschrieben 17. Mai 2002 Also folgendes kann Fehler enthalten, ist mir nur gerade eingefallen und konnte es nicht testen: Dim Zahl As Integer Dim Wort As String dim Counter As Integer For i = (lenght(Zahl)) To 5 wort = wort & " " Next i wort = wort + zahl Zitieren
Goos Geschrieben 17. Mai 2002 Geschrieben 17. Mai 2002 @ sub7: Du hast da was von VBA geschrieben.....fuer welche Office Anwendung solls denn sein und was genau machst du da? Vielleicht gibts da ja doch noch viel einfachere Wege Goos Zitieren
klinger Geschrieben 21. Mai 2002 Geschrieben 21. Mai 2002 x = right(" " & Zahl, 6) '6 Leerzeichen zwischen den " Zitieren
HELLmut Geschrieben 22. Mai 2002 Autor Geschrieben 22. Mai 2002 keine schlechte idee, aber geht leider nicht... er setzt immer ein leerzeichen vor die zahl, wäre diese fünfstellig ginge es - in allen anderen fällen bleibt es bei der zahl mit einem leerzeichen davor, weil right wenn es über den string hinaus geht einfach den string nimmt und NICHT den rest mit leerzeichen auffüllt... Zitieren
klinger Geschrieben 23. Mai 2002 Geschrieben 23. Mai 2002 Geht doch, es müssen nur genau 6 Leerzeichen zwischen den Anführungszeichen stehen. Zur Demonstration setzte ich mal einen Unterstrich statt Leerzeichen x = right("______" & Zahl, 6) Zahl = 500 -> x = "___500" Zahl = 50 -> x = "____50" Zahl = 5 -> x = "_____5" Alternative wäre x = right(string(6, " ") & Zahl, 6) Grüsse Zitieren
HELLmut Geschrieben 23. Mai 2002 Autor Geschrieben 23. Mai 2002 ja stimmt ! das board hier lässt ja die leerzeichen aus, wenn es sechs sind... und es geht genau wegen dem was ich beschrieben habe, das er das übrige weg lässt -> entschuldige mich demütig Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.