J'ai créé une structure de type personelle,
j'ai une variable titi(100) qui de type personelle
et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire de
boucle du style
titi=tata?
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
ng
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle, j'ai une variable titi(100) qui de type personelle et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire de boucle du style titi=tata?
et d'effacer tout ce qu'il y a dans tata?
merci d'avance
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis
je l'efface :
Option Explicit
Private Type Personne
Nom As String
Prenom As String
End Type
Private Sub Form_Load()
Dim tGroupe1() As Personne
Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0)
.Nom = "BLANC"
.Prenom = "Michel"
End With
With tGroupe1(1)
.Nom = "JUGNOT"
.Prenom = "Gérard"
End With
With tGroupe1(2)
.Nom = "LHERMITTE"
.Prenom = "Thierry"
End With
tGroupe2 = tGroupe1 'copie
Erase tGroupe1 'efface
Dim i As Integer
For i = 0 To UBound(tGroupe2)
Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom,
tGroupe2(i).Prenom
Next
End Sub
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle,
j'ai une variable titi(100) qui de type personelle
et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire
de boucle du style
titi=tata?
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle, j'ai une variable titi(100) qui de type personelle et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire de boucle du style titi=tata?
et d'effacer tout ce qu'il y a dans tata?
merci d'avance
Stéphane
Est ce possible avec des taille de tableau fix ?
"ng" wrote:
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote: > Bonjour, > > J'ai créé une structure de type personelle, > j'ai une variable titi(100) qui de type personelle > et une autre tata(100) qy=ui est également de type personelle > > est-ce qu'il y a un moyen simple de copier titi dans tata sans faire > de boucle du style > titi=tata? > > et d'effacer tout ce qu'il y a dans tata? > > merci d'avance
Est ce possible avec des taille de tableau fix ?
"ng" wrote:
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis
je l'efface :
Option Explicit
Private Type Personne
Nom As String
Prenom As String
End Type
Private Sub Form_Load()
Dim tGroupe1() As Personne
Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0)
.Nom = "BLANC"
.Prenom = "Michel"
End With
With tGroupe1(1)
.Nom = "JUGNOT"
.Prenom = "Gérard"
End With
With tGroupe1(2)
.Nom = "LHERMITTE"
.Prenom = "Thierry"
End With
tGroupe2 = tGroupe1 'copie
Erase tGroupe1 'efface
Dim i As Integer
For i = 0 To UBound(tGroupe2)
Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom,
tGroupe2(i).Prenom
Next
End Sub
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Stéphane wrote:
> Bonjour,
>
> J'ai créé une structure de type personelle,
> j'ai une variable titi(100) qui de type personelle
> et une autre tata(100) qy=ui est également de type personelle
>
> est-ce qu'il y a un moyen simple de copier titi dans tata sans faire
> de boucle du style
> titi=tata?
>
> et d'effacer tout ce qu'il y a dans tata?
>
> merci d'avance
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote: > Bonjour, > > J'ai créé une structure de type personelle, > j'ai une variable titi(100) qui de type personelle > et une autre tata(100) qy=ui est également de type personelle > > est-ce qu'il y a un moyen simple de copier titi dans tata sans faire > de boucle du style > titi=tata? > > et d'effacer tout ce qu'il y a dans tata? > > merci d'avance
ng
Salut,
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1(2) As Personne Dim tGroupe2() As Personne
'ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next
For i = 0 To UBound(tGroupe1) Debug.Print "Groupe1[" & i & "]", tGroupe1(i).Nom, tGroupe1(i).Prenom Next End Sub
Moralité tGroupe2 ne doit pas etre de taille fixe. tGroupe1 peut l'etre.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Est ce possible avec des taille de tableau fix ?
"ng" wrote:
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle, j'ai une variable titi(100) qui de type personelle et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire de boucle du style titi=tata?
et d'effacer tout ce qu'il y a dans tata?
merci d'avance
Salut,
Option Explicit
Private Type Personne
Nom As String
Prenom As String
End Type
Private Sub Form_Load()
Dim tGroupe1(2) As Personne
Dim tGroupe2() As Personne
'ReDim tGroupe1(2)
With tGroupe1(0)
.Nom = "BLANC"
.Prenom = "Michel"
End With
With tGroupe1(1)
.Nom = "JUGNOT"
.Prenom = "Gérard"
End With
With tGroupe1(2)
.Nom = "LHERMITTE"
.Prenom = "Thierry"
End With
tGroupe2 = tGroupe1 'copie
Erase tGroupe1 'efface
Dim i As Integer
For i = 0 To UBound(tGroupe2)
Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom,
tGroupe2(i).Prenom
Next
For i = 0 To UBound(tGroupe1)
Debug.Print "Groupe1[" & i & "]", tGroupe1(i).Nom,
tGroupe1(i).Prenom
Next
End Sub
Moralité tGroupe2 ne doit pas etre de taille fixe. tGroupe1 peut l'etre.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Est ce possible avec des taille de tableau fix ?
"ng" wrote:
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un
autre puis je l'efface :
Option Explicit
Private Type Personne
Nom As String
Prenom As String
End Type
Private Sub Form_Load()
Dim tGroupe1() As Personne
Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0)
.Nom = "BLANC"
.Prenom = "Michel"
End With
With tGroupe1(1)
.Nom = "JUGNOT"
.Prenom = "Gérard"
End With
With tGroupe1(2)
.Nom = "LHERMITTE"
.Prenom = "Thierry"
End With
tGroupe2 = tGroupe1 'copie
Erase tGroupe1 'efface
Dim i As Integer
For i = 0 To UBound(tGroupe2)
Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom,
tGroupe2(i).Prenom
Next
End Sub
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle,
j'ai une variable titi(100) qui de type personelle
et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire
de boucle du style
titi=tata?
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1(2) As Personne Dim tGroupe2() As Personne
'ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next
For i = 0 To UBound(tGroupe1) Debug.Print "Groupe1[" & i & "]", tGroupe1(i).Nom, tGroupe1(i).Prenom Next End Sub
Moralité tGroupe2 ne doit pas etre de taille fixe. tGroupe1 peut l'etre.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Est ce possible avec des taille de tableau fix ?
"ng" wrote:
Salut,
Dans l'exemple suivant je copie un tableau de structure dans un autre puis je l'efface :
Option Explicit
Private Type Personne Nom As String Prenom As String End Type
Private Sub Form_Load() Dim tGroupe1() As Personne Dim tGroupe2() As Personne
ReDim tGroupe1(2)
With tGroupe1(0) .Nom = "BLANC" .Prenom = "Michel" End With
With tGroupe1(1) .Nom = "JUGNOT" .Prenom = "Gérard" End With
With tGroupe1(2) .Nom = "LHERMITTE" .Prenom = "Thierry" End With
tGroupe2 = tGroupe1 'copie Erase tGroupe1 'efface
Dim i As Integer For i = 0 To UBound(tGroupe2) Debug.Print "Groupe2[" & i & "]", tGroupe2(i).Nom, tGroupe2(i).Prenom Next End Sub
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Stéphane wrote:
Bonjour,
J'ai créé une structure de type personelle, j'ai une variable titi(100) qui de type personelle et une autre tata(100) qy=ui est également de type personelle
est-ce qu'il y a un moyen simple de copier titi dans tata sans faire de boucle du style titi=tata?
et d'effacer tout ce qu'il y a dans tata?
merci d'avance
Loïc
Non, tu es obligé de recopier élément par élément. J'ai eu exactement le même problème.
-- Loïc
Non, tu es obligé de recopier élément par élément. J'ai eu exactement
le même problème.
Non, tu es obligé de recopier élément par élément. J'ai eu exactement le même problème.
-- Loïc
Patrice Henrio
Je ne pense pas, il est possible de faire un copymemory puisque dans un tableau chaque valeur a une taille fixe. La solution a déjà été donnée dans ce groupe il y a plusieurs mois déjà. L'idée est de récupérer l'adresse du premier élément du tableau et de copie le nombre d'octets nécessaire vers l'espace mémoire utilisé dans la deuxième structure.
D'ailleurs
"Loïc" a écrit dans le message de news:
Non, tu es obligé de recopier élément par élément. J'ai eu exactement le même problème.
-- Loïc
Je ne pense pas, il est possible de faire un copymemory puisque dans un
tableau chaque valeur a une taille fixe.
La solution a déjà été donnée dans ce groupe il y a plusieurs mois déjà.
L'idée est de récupérer l'adresse du premier élément du tableau et de copie
le nombre d'octets nécessaire vers l'espace mémoire utilisé dans la deuxième
structure.
D'ailleurs
"Loïc" <l@nospam.net> a écrit dans le message de news:
mn.fb857d5117d76d60.16898@nospam.net...
Non, tu es obligé de recopier élément par élément. J'ai eu exactement le
même problème.
Je ne pense pas, il est possible de faire un copymemory puisque dans un tableau chaque valeur a une taille fixe. La solution a déjà été donnée dans ce groupe il y a plusieurs mois déjà. L'idée est de récupérer l'adresse du premier élément du tableau et de copie le nombre d'octets nécessaire vers l'espace mémoire utilisé dans la deuxième structure.
D'ailleurs
"Loïc" a écrit dans le message de news:
Non, tu es obligé de recopier élément par élément. J'ai eu exactement le même problème.