Bonsoir.
il va falloir que tu fasses le code.
pour te faire avancer, il faut que tu passes par une fonction split pour
alimenter un tableau et ensuite créer un enregistrement pour chaque valeur
du tableau.
tu peux également passer pas Instr pour calculer la position des ; et
extraire le texte par Mid, mais c'est plus compliqué.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13246 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$
| Bonjour,
|
| J'ai dans une base Access une variable de type String contenant un
texte.
| Les éléments de ce texte sont séparés par des points virgules.
| exemple : toto;titi;tutu;...
| Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce
| texte.
| exemple : enreg 1 : toto
| enreg 2 : titi
| enreg 3 : tutu
| ...
| Si vous disposez d'un bout de code vba je serai preneur.
|
| MERCI
|
| Jacky
|
|
Bonsoir.
il va falloir que tu fasses le code.
pour te faire avancer, il faut que tu passes par une fonction split pour
alimenter un tableau et ensuite créer un enregistrement pour chaque valeur
du tableau.
tu peux également passer pas Instr pour calculer la position des ; et
extraire le texte par Mid, mais c'est plus compliqué.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13246 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e31648$0$854$ba4acef3@news.orange.fr...
| Bonjour,
|
| J'ai dans une base Access une variable de type String contenant un
texte.
| Les éléments de ce texte sont séparés par des points virgules.
| exemple : toto;titi;tutu;...
| Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce
| texte.
| exemple : enreg 1 : toto
| enreg 2 : titi
| enreg 3 : tutu
| ...
| Si vous disposez d'un bout de code vba je serai preneur.
|
| MERCI
|
| Jacky
|
|
Bonsoir.
il va falloir que tu fasses le code.
pour te faire avancer, il faut que tu passes par une fonction split pour
alimenter un tableau et ensuite créer un enregistrement pour chaque valeur
du tableau.
tu peux également passer pas Instr pour calculer la position des ; et
extraire le texte par Mid, mais c'est plus compliqué.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Nouvelle base Access des communes françaises avec
longitude, latitude et 13246 sites internet officiels
http://ardecheearth.free.fr/basededonnees.htm
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$
| Bonjour,
|
| J'ai dans une base Access une variable de type String contenant un
texte.
| Les éléments de ce texte sont séparés par des points virgules.
| exemple : toto;titi;tutu;...
| Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce
| texte.
| exemple : enreg 1 : toto
| enreg 2 : titi
| enreg 3 : tutu
| ...
| Si vous disposez d'un bout de code vba je serai preneur.
|
| MERCI
|
| Jacky
|
|
Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e31648$0$854$ba4acef3@news.orange.fr...
Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de ce
texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= > "michel" a écrit dans le message de
news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= > "michel" <michel.chambrillon@Aenlevercepas.fr> a écrit dans le message de
news: OMtqX1cwGHA.4688@TK2MSFTNGP06.phx.gbl...
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e31648$0$854$ba4acef3@news.orange.fr...
Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= > "michel" a écrit dans le message de
news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a zero
et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" a écrit dans le message de news:
44e44b71$0$853$Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >> "michel" a écrit dans le message de
news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a zero
et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e44b71$0$853$ba4acef3@news.orange.fr...
Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >> "michel" <michel.chambrillon@Aenlevercepas.fr> a écrit dans le message de
news: OMtqX1cwGHA.4688@TK2MSFTNGP06.phx.gbl...
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e31648$0$854$ba4acef3@news.orange.fr...
Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a zero
et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" a écrit dans le message de news:
44e44b71$0$853$Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >> "michel" a écrit dans le message de
news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonsoir Messieurs,
CHAPEAU.
Alors là il n'est plus du tout question que je vous montre mon code.
Faire tout ça en si peu de lignes de code, je ne peux dire que Bravo.
Encore MERCI de toutes vos explications (en peu de lignes) et de votre
gentillesse à aider les adeptes d'Access.
Si j'abusais j'aimerai profiter de votre expérience (et du code) pour
utiliser les propriétés Begintrans, Commitrans et Rollback.
Et ce dans un formulaire contenant une table et une sous table (exemples
: Entêtes de factures et Lignes de factures).
Donc un clic sur un bouton Annuler qui ne provoque pas d'enregistrement
incomplet dans les deux tables.
Quoi qu'il en soit MERCI
Jacky
=============================================================== > "michel" a écrit dans le message de
news: %Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a
zero et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" a écrit dans le message de news:
44e44b71$0$853$Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >>> "michel" a écrit dans le message
de news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonsoir Messieurs,
CHAPEAU.
Alors là il n'est plus du tout question que je vous montre mon code.
Faire tout ça en si peu de lignes de code, je ne peux dire que Bravo.
Encore MERCI de toutes vos explications (en peu de lignes) et de votre
gentillesse à aider les adeptes d'Access.
Si j'abusais j'aimerai profiter de votre expérience (et du code) pour
utiliser les propriétés Begintrans, Commitrans et Rollback.
Et ce dans un formulaire contenant une table et une sous table (exemples
: Entêtes de factures et Lignes de factures).
Donc un clic sur un bouton Annuler qui ne provoque pas d'enregistrement
incomplet dans les deux tables.
Quoi qu'il en soit MERCI
Jacky
=============================================================== > "michel" <michel.chambrillon@Aenlevercepas.fr> a écrit dans le message de
news: %23jmpVhfwGHA.2260@TK2MSFTNGP03.phx.gbl...
Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a
zero et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e44b71$0$853$ba4acef3@news.orange.fr...
Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >>> "michel" <michel.chambrillon@Aenlevercepas.fr> a écrit dans le message
de news: OMtqX1cwGHA.4688@TK2MSFTNGP06.phx.gbl...
Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" <jbenchetrit@wanadoo.fr> a écrit dans le message de news:
44e31648$0$854$ba4acef3@news.orange.fr...
Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky
Bonsoir Messieurs,
CHAPEAU.
Alors là il n'est plus du tout question que je vous montre mon code.
Faire tout ça en si peu de lignes de code, je ne peux dire que Bravo.
Encore MERCI de toutes vos explications (en peu de lignes) et de votre
gentillesse à aider les adeptes d'Access.
Si j'abusais j'aimerai profiter de votre expérience (et du code) pour
utiliser les propriétés Begintrans, Commitrans et Rollback.
Et ce dans un formulaire contenant une table et une sous table (exemples
: Entêtes de factures et Lignes de factures).
Donc un clic sur un bouton Annuler qui ne provoque pas d'enregistrement
incomplet dans les deux tables.
Quoi qu'il en soit MERCI
Jacky
=============================================================== > "michel" a écrit dans le message de
news: %Re Bonjour
Comme te le disais Raymond la fonction Split offre une solution plus
"Propre".
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
tableau = Split(var, ";")
For nb = 0 To UBound(tableau)
rst.AddNew
rst!test = tableau(nb)
rst.Update
Next
Set rst = Nothing
End Sub
Attention split renvoie un tableau donc le premier element commence a
zero et Ubound donne le numero du dernier
Plus simple Non
Michel
"jbenchetrit" a écrit dans le message de news:
44e44b71$0$853$Bonjour Michel,
BRAVO
Et tu dis que ton code est un peu lourd !
Je n'ose te montrer le mien.
Je l'ai adapté à mon mdb et fonctionnement parfait.
MERCI
Jacky
============================================================= >>> "michel" a écrit dans le message
de news:Bonjour
Peut etre un peu lourd mais ca fonctionne
Sub decoupe()
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("table1")
var = "titi;toto;tutu;tata"
position = 0
Do
debut = position + 1
position = InStr(position + 1, var, ";")
If position = 0 Then
rst.AddNew
rst!test = Mid(var, debut, Len(var) - debut + 1)
rst.Update
Exit Do
End If
rst.AddNew
rst!test = Mid(var, debut, position - debut)
rst.Update
Loop While position <> 0
Set rst = Nothing
End Sub
Michel
"jbenchetrit" a écrit dans le message de news:
44e31648$0$854$Bonjour,
J'ai dans une base Access une variable de type String contenant un
texte.
Les éléments de ce texte sont séparés par des points virgules.
exemple : toto;titi;tutu;...
Je voudrais alimenter une table (1 champ texte) avec chaque élément de
ce texte.
exemple : enreg 1 : toto
enreg 2 : titi
enreg 3 : tutu
...
Si vous disposez d'un bout de code vba je serai preneur.
MERCI
Jacky