Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Hihi, gute Frage!
Zunächst hatten wir bei 0 begonnen, im Laufe des Gefechts hat sich da aber 'ne 1 eingeschlichen...
// edit: Autsch!!! - Die Hitze!!!!
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Ja Kruzifix, Sascha!
Die Behandlung auf <=3 Zeichen muss natürlich in den else-Zweig.
Zunächst muss du aber einmal die Anforderung definieren: Was soll den geschehen, wenn der String nur aus 3 oder weniger Zeichen besteht?
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Ich kann nichts falsches erkennen, ausser einem nicht notwendigem begin..end. Welches Ergebnis erwartest du denn? Wenn vorher nix in der Zelle war, sollte anschließend "leer" drin stehen.
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Aufruf mit
ConvertStrings(StringGrid1.Cols);
mit xx = Spaltennummer, in der ausgetauscht werden soll
Pred(), weil die Indices mit 0 beginnen, das höchste Element hat dann den Index Count-1 und das ist das gleiche wie pred(Count)
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Also in etwa so:
procedure ConvertStrings(sl:TStrings);
var i, Current: integer;
begin
for i := 0 to Pred(sl.Count) do s1:=copy(s1,1,length(s1)-3)+'xxx'
end;
Geht sicherlich noch eleganter :roll:
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Na, dann kannst du diese Prozedur von Deddy die wir heute Vormittag hatten entsprechend anpassen, eben nicht mehr die maximale Breite ermitteln, sondern die Stringsprüfen und ggf. die letzten 3 Zeichen ersetzen.
Forum: Object-Pascal / Delphi-Language
Delphi
by taaktaak,
3. Jun 2008
Wo automatisieren? In Excel? In Delphi?