Bjr
J’ai une table nommée utilisateur avec un champ NomPrenom
utilisateur
NomPrenom
ABADA Mira Maya
Je veux Découper ce champ en deux
Le résultat :
Nom .......... Prenom
ABADA ....... Mira Maya
Aider moi avec une requête ou un code source
Merci
Version imprimable
Bjr
J’ai une table nommée utilisateur avec un champ NomPrenom
utilisateur
NomPrenom
ABADA Mira Maya
Je veux Découper ce champ en deux
Le résultat :
Nom .......... Prenom
ABADA ....... Mira Maya
Aider moi avec une requête ou un code source
Merci
Quel serait les critères de Découpe ? Le premier Espace ?
De Turkeim Charlotte -> De ... Turkeim Charlotte
Tout le problème est dans les noms composés ...
oui le critère de Découpe c'est le premier Espace
merci pour ton aide
comment faire
pour le decouper
Comme ça je dirais
Code:
1
2
3
4
5
6
7 SpacePos := Pos(' ', CompleteName); if SpacePos > 0 then begin FirstName := Copy(CompleteName, SpacePos + 1, MaxInt); LastName := Copy(CompleteName, 1, SpacePos - 1); end else LastName := CompleteName;
merci pour ton aide
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 procedure TForm1.BitBtn1Click(Sender: TObject); var SpacePos:integer; begin SpacePos := Pos(' ', Table1NOM.value); table1.First; while not table1.Eof do begin Table1.edit; if SpacePos > 0 then begin Table1PRENOM.value := Copy(Table1NOM.value, SpacePos + 1, MaxInt); Table1NOM.value := Copy(Table1NOM.value, 1, SpacePos - 1); end else begin Table1NOM.value := Table1NOM.value; end; Table1.post; table1.Next; end; end;
j'ai oubliée une chose
c le code le plus corecte
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 procedure TForm1.SpeedButton2Click(Sender: TObject); var SpacePos:integer; begin SpacePos := Pos(' ', TableNOM.value); table.First; while table.Eof=false do begin Table.edit; if SpacePos > 0 then begin TablePRNOM.value := Copy(TableNOM.value, SpacePos + 1, MaxInt); TableNOM.value := Copy(TableNOM.value, 1, SpacePos - 1); end else begin TableNOM.value := TableNOM.value; end; Table.post; table.Next; SpacePos := Pos(' ', TableNOM.value); end; end;
Ou Encore, plus court, plus "optimisé"
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 procedure TForm1.SpeedButton2Click(Sender: TObject); var SpacePos:integer; begin table.First(); while not table.Eof do begin SpacePos := Pos(' ', TableNOM.value); if SpacePos > 0 then begin Table.edit(); TablePRNOM.value := Copy(TableNOM.value, SpacePos + 1, MaxInt); TableNOM.value := Copy(TableNOM.value, 1, SpacePos - 1); Table.post(); end; table.Next(); end; end;