voil=E0, j'ai une table qui comporte des champs comme ceci:
toto 33|32|21
tata 12|13|14
et je souhaiterais dupliquer ces lignes avec du code ou des requ=EAtes.
j'ai d=E9j=E0 un code pour obtenir:
(je duplique ma ligne autant de fois que j'ai de | dans mon champ)
toto 33|32|31
toto 33|32|31
toto 33|32|31
tata 12|13|14
tata 12|13|14
tata 12|13|14
mais apr=E8s je n'arrive pas =E0 obtenir:
toto 33
toto 32
toto 31
tata 12
tata 13
tata 14
Quelqu'un aurait-il une id=E9e ou une solution =E0 mon probl=E8me, car l=E0
je suis vraiment bolqu=E9???
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ze Titi
Bonjour
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
Bonjour dams27_56@hotmail.com
Donne ton code existant, ça pourrait nous aider...
dans ton message <1164963662.628668.54290@j44g2000cwa.googlegroups.com>
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci:
toto 33|32|21
tata 12|13|14
et je souhaiterais dupliquer ces lignes avec du code ou des requêtes.
j'ai déjà un code pour obtenir:
(je duplique ma ligne autant de fois que j'ai de | dans mon champ)
toto 33|32|31
toto 33|32|31
toto 33|32|31
tata 12|13|14
tata 12|13|14
tata 12|13|14
mais après je n'arrive pas à obtenir:
toto 33
toto 32
toto 31
tata 12
tata 13
tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là
je suis vraiment bolqué???
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
Fr
Bonjour,
A mon avis... Le plus simple si tu ne veux pas te lancer dans de la programmation serait : - de créer une nouvelle table vide qui contient tes 2 champs (nom et valeur) - de créer une requête d'ajout de données qui insèrera uniquement les enregistrements correspondants à la 1ère valeur - modifier la requête pour insérer les enreg qui correspondent à la 2ème donnée - modifier la requête pour insérer les enreg qui correspondent à la 3ème donnée Pour récupérer la valeur à insérer, il faut utiliser les fonctions chaînes de caractères qui te permettront de scinder ta chaîne en plusieurs valeurs. Faut regarder du côté des fonctions left( ), right( ) et mid ( )
Françoise ENITA Bordeaux - UF Sciences pour l'Ingénieur
a écrit dans le message de news:
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
Bonjour,
A mon avis...
Le plus simple si tu ne veux pas te lancer dans de la programmation serait :
- de créer une nouvelle table vide qui contient tes 2 champs (nom et valeur)
- de créer une requête d'ajout de données qui insèrera uniquement les
enregistrements correspondants à la 1ère valeur
- modifier la requête pour insérer les enreg qui correspondent à la 2ème
donnée
- modifier la requête pour insérer les enreg qui correspondent à la 3ème
donnée
Pour récupérer la valeur à insérer, il faut utiliser les fonctions chaînes
de caractères qui te permettront de scinder ta chaîne en plusieurs valeurs.
Faut regarder du côté des fonctions left( ), right( ) et mid ( )
Françoise
ENITA Bordeaux - UF Sciences pour l'Ingénieur
<dams27_56@hotmail.com> a écrit dans le message de news:
1164963662.628668.54290@j44g2000cwa.googlegroups.com...
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci:
toto 33|32|21
tata 12|13|14
et je souhaiterais dupliquer ces lignes avec du code ou des requêtes.
j'ai déjà un code pour obtenir:
(je duplique ma ligne autant de fois que j'ai de | dans mon champ)
toto 33|32|31
toto 33|32|31
toto 33|32|31
tata 12|13|14
tata 12|13|14
tata 12|13|14
mais après je n'arrive pas à obtenir:
toto 33
toto 32
toto 31
tata 12
tata 13
tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là
je suis vraiment bolqué???
A mon avis... Le plus simple si tu ne veux pas te lancer dans de la programmation serait : - de créer une nouvelle table vide qui contient tes 2 champs (nom et valeur) - de créer une requête d'ajout de données qui insèrera uniquement les enregistrements correspondants à la 1ère valeur - modifier la requête pour insérer les enreg qui correspondent à la 2ème donnée - modifier la requête pour insérer les enreg qui correspondent à la 3ème donnée Pour récupérer la valeur à insérer, il faut utiliser les fonctions chaînes de caractères qui te permettront de scinder ta chaîne en plusieurs valeurs. Faut regarder du côté des fonctions left( ), right( ) et mid ( )
Françoise ENITA Bordeaux - UF Sciences pour l'Ingénieur
a écrit dans le message de news:
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
DAMS
Bonjour,
voilà mon code: Function NbOc(Chaine As String, Ch As String) As Long Dim I As Long NbOc = 0 For I = 1 To Len(Chaine) If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1 Next End Function
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF nb = NbOc(snap("CHAMP2"), "|") If nb > 0 Then For I = 1 To nb strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & snap(1) & "')" CurrentDb.Execute strSQL Next I End If snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
juste une précision pour vous dire que le nbr de | est variable...c'est ça le pb...
merci de votre aide cordialement
Bonjour
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
Bonjour,
voilà mon code:
Function NbOc(Chaine As String, Ch As String) As Long
Dim I As Long
NbOc = 0
For I = 1 To Len(Chaine)
If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1
Next
End Function
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
nb = NbOc(snap("CHAMP2"), "|")
If nb > 0 Then
For I = 1 To nb
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" &
snap(1) & "')"
CurrentDb.Execute strSQL
Next I
End If
snap.MoveNext
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
juste une précision pour vous dire que le nbr de | est
variable...c'est ça le pb...
merci de votre aide
cordialement
Bonjour dams27_56@hotmail.com
Donne ton code existant, ça pourrait nous aider...
dans ton message <1164963662.628668.54290@j44g2000cwa.googlegroups.com>
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci:
toto 33|32|21
tata 12|13|14
et je souhaiterais dupliquer ces lignes avec du code ou des requêtes.
j'ai déjà un code pour obtenir:
(je duplique ma ligne autant de fois que j'ai de | dans mon champ)
toto 33|32|31
toto 33|32|31
toto 33|32|31
tata 12|13|14
tata 12|13|14
tata 12|13|14
mais après je n'arrive pas à obtenir:
toto 33
toto 32
toto 31
tata 12
tata 13
tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là
je suis vraiment bolqué???
voilà mon code: Function NbOc(Chaine As String, Ch As String) As Long Dim I As Long NbOc = 0 For I = 1 To Len(Chaine) If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1 Next End Function
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF nb = NbOc(snap("CHAMP2"), "|") If nb > 0 Then For I = 1 To nb strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & snap(1) & "')" CurrentDb.Execute strSQL Next I End If snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
juste une précision pour vous dire que le nbr de | est variable...c'est ça le pb...
merci de votre aide cordialement
Bonjour
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
ze Titi
Bonjour DAMS
Du code qui me rappelle quelque chose... lol Bon, changement de stratégie mais à tester (non garanti...)
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL snap.MoveNext next Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
dans ton message du 01/12/2006,
Bonjour,
voilà mon code: Function NbOc(Chaine As String, Ch As String) As Long Dim I As Long NbOc = 0 For I = 1 To Len(Chaine) If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1 Next End Function
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF nb = NbOc(snap("CHAMP2"), "|") If nb > 0 Then For I = 1 To nb strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & snap(1) & "')" CurrentDb.Execute strSQL Next I End If snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
juste une précision pour vous dire que le nbr de | est variable...c'est ça le pb...
merci de votre aide cordialement
Bonjour
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
-- Voilou ! Bon code Cordialement,
Ze Titi
Bonjour DAMS
Du code qui me rappelle quelque chose... lol
Bon, changement de stratégie mais à tester (non garanti...)
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long,aux as Variant
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
aux=split(snap!champ2,"|")
nb=ubound(aux)
for i=0 to nb-1
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')"
CurrentDb.Execute strSQL
snap.MoveNext
next
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
dans ton message
<1164966336.868562.169360@j72g2000cwa.googlegroups.com> du 01/12/2006,
Bonjour,
voilà mon code:
Function NbOc(Chaine As String, Ch As String) As Long
Dim I As Long
NbOc = 0
For I = 1 To Len(Chaine)
If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1
Next
End Function
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
nb = NbOc(snap("CHAMP2"), "|")
If nb > 0 Then
For I = 1 To nb
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" &
snap(1) & "')"
CurrentDb.Execute strSQL
Next I
End If
snap.MoveNext
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
juste une précision pour vous dire que le nbr de | est
variable...c'est ça le pb...
merci de votre aide
cordialement
Bonjour dams27_56@hotmail.com
Donne ton code existant, ça pourrait nous aider...
dans ton message <1164963662.628668.54290@j44g2000cwa.googlegroups.com>
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci:
toto 33|32|21
tata 12|13|14
et je souhaiterais dupliquer ces lignes avec du code ou des requêtes.
j'ai déjà un code pour obtenir:
(je duplique ma ligne autant de fois que j'ai de | dans mon champ)
toto 33|32|31
toto 33|32|31
toto 33|32|31
tata 12|13|14
tata 12|13|14
tata 12|13|14
mais après je n'arrive pas à obtenir:
toto 33
toto 32
toto 31
tata 12
tata 13
tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là
je suis vraiment bolqué???
Du code qui me rappelle quelque chose... lol Bon, changement de stratégie mais à tester (non garanti...)
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL snap.MoveNext next Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
dans ton message du 01/12/2006,
Bonjour,
voilà mon code: Function NbOc(Chaine As String, Ch As String) As Long Dim I As Long NbOc = 0 For I = 1 To Len(Chaine) If Mid$(Chaine, I, 1) = Ch Then NbOc = NbOc + 1 Next End Function
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF nb = NbOc(snap("CHAMP2"), "|") If nb > 0 Then For I = 1 To nb strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & snap(1) & "')" CurrentDb.Execute strSQL Next I End If snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
juste une précision pour vous dire que le nbr de | est variable...c'est ça le pb...
merci de votre aide cordialement
Bonjour
Donne ton code existant, ça pourrait nous aider...
dans ton message
bonjour à tous,
voilà, j'ai une table qui comporte des champs comme ceci: toto 33|32|21 tata 12|13|14 et je souhaiterais dupliquer ces lignes avec du code ou des requêtes. j'ai déjà un code pour obtenir: (je duplique ma ligne autant de fois que j'ai de | dans mon champ) toto 33|32|31 toto 33|32|31 toto 33|32|31 tata 12|13|14 tata 12|13|14 tata 12|13|14 mais après je n'arrive pas à obtenir: toto 33 toto 32 toto 31 tata 12 tata 13 tata 14
Quelqu'un aurait-il une idée ou une solution à mon problème, car là je suis vraiment bolqué???
merci beaucoup à tous... cordialement
-- Cordialement,
Ze Titi
-- Voilou ! Bon code Cordialement,
Ze Titi
ze Titi
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
-- Voilou ! Bon code Cordialement,
Ze Titi
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long,aux as Variant
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
aux=split(snap!champ2,"|")
nb=ubound(aux)
for i=0 to nb-1
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')"
CurrentDb.Execute strSQL
next
snap.MoveNext
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
-- Voilou ! Bon code Cordialement,
Ze Titi
DAMS
merci beaucoup pour le code cela fonctionne mis à part qu'il ne m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une solution.
merci d'avance cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
-- Voilou ! Bon code Cordialement,
Ze Titi
merci beaucoup pour le code cela fonctionne mis à part qu'il ne
m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il
m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une
solution.
merci d'avance
cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long,aux as Variant
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
aux=split(snap!champ2,"|")
nb=ubound(aux)
for i=0 to nb-1
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')"
CurrentDb.Execute strSQL
next
snap.MoveNext
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
merci beaucoup pour le code cela fonctionne mis à part qu'il ne m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une solution.
merci d'avance cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
-- Voilou ! Bon code Cordialement,
Ze Titi
ze Titi
Bonjour DAMS
Remplace for i=0 to nb-1 par for i=0 to nb
dans ton message
merci beaucoup pour le code cela fonctionne mis à part qu'il ne m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une solution.
merci d'avance cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub
-- Voilou ! Bon code Cordialement,
Ze Titi
-- Voilou ! Bon code Cordialement,
Ze Titi
Bonjour DAMS
Remplace
for i=0 to nb-1
par
for i=0 to nb
dans ton message <1164969909.840448.53150@n67g2000cwd.googlegroups.com>
merci beaucoup pour le code cela fonctionne mis à part qu'il ne
m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il
m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une
solution.
merci d'avance
cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz()
Dim bd As Database
Dim snap As DAO.Recordset
Dim strSQL As String, I As Long, nb As Long,aux as Variant
Set bd = CurrentDb
Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot)
snap.MoveLast: snap.MoveFirst
While Not snap.EOF
aux=split(snap!champ2,"|")
nb=ubound(aux)
for i=0 to nb-1
strSQL = "Insert into DRL(CHAMP1,CHAMP2) "
strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')"
CurrentDb.Execute strSQL
next
snap.MoveNext
Wend
snap.Close
bd.Close
Set snap = Nothing
Set bd = Nothing
End Sub
merci beaucoup pour le code cela fonctionne mis à part qu'il ne m'extrait pas le dernier champ. pour un champ qui contient 12|13|14, il m'extrait le 12 le 13 mais pas le 14. est-ce que vous avez une solution.
merci d'avance cordialement
Ahhhhhhhhhhhh, quelle horreur, j'ai fait une erreur...
Sub zz() Dim bd As Database Dim snap As DAO.Recordset Dim strSQL As String, I As Long, nb As Long,aux as Variant Set bd = CurrentDb Set snap = bd.OpenRecordset("select * from DRL", dbOpenSnapshot) snap.MoveLast: snap.MoveFirst While Not snap.EOF aux=split(snap!champ2,"|") nb=ubound(aux) for i=0 to nb-1 strSQL = "Insert into DRL(CHAMP1,CHAMP2) " strSQL = strSQL & "Values('" & snap(0) & "','" & aux(i) & "')" CurrentDb.Execute strSQL next snap.MoveNext Wend snap.Close bd.Close Set snap = Nothing Set bd = Nothing End Sub