Au secours: macro Excel!!!!!!!

rose_sahel Messages postés 1 Statut Membre -  
 Rose_sahel -
Bonjour tt le monde!!!
j'ai besoin d'aides...

Il faut que je réalise une macro sous excel en VB qui puisse faire :
Soient 2 tables :

Définition1 et Dimension1

Definition1 possède divers champs; ceux qui nous intéressent dans ce cas sont les champs :

IDGRP LIBFORAB CDDIM DIM1 DIM2 DIM3 DIM4

Dans la table Dimension, les champs qui nous intressent sont:

IDGRP LIBFORAB CDDIM DIM1 DIM2 DIM3 DIM4

Le but est de comparer les champs de ces 2 tables pour affecter un identifiant IDDIM dans la table Définition1 (qui existe dans la table Dimension),

uniquement quand il y a égalité des champs.

Exemple :

Dimension:

IDDIM IDGRP LIBFORAB CDDIM DIM1 DIM2 DIM3 DIM4
14 1 RD 4562 2 2.4

Définition1:

IDDIM IDGRP LIBFORAB CDDIM DIM1 DIM2 DIM3 DIM4
1 RD 4562 2 2.4

Il y a égalité donc on affecte 14 à IDDIM de la table Définition1.

merci bcp,

1 réponse

gator
 
sous excell tu as un enregistreur de macro
tu le lances tu fait tes opération tu l'arretes .
apres tu fait modifier macro et tu te serts du code
0
Rose_sahel
 
Salut j'ai écrit ce code mais il ne tourne pas bien, qu'en penses-tu STP?
Rose.


Sub MARQDEFDIM()
'
' MARQDEFDIM Macro
' Macro enregistrée le 25/05/2004 par rose
'

'

Dim idDimDi As String
Dim idgrpDi As String
Dim liforabDi As String
Dim cddimDi As String
Dim dim1Di As String
Dim dim2Di As String
Dim dim3Di As String
Dim dim4Di As String

Dim idDimD As String
Dim idgrpD As String
Dim liforabD As String
Dim cddimD As String
Dim dim1D As String
Dim dim2D As String
Dim dim3D As String
Dim dim4D As String



For CounterD = 2 To 101


idDimD = Worksheets("Def1").Cells(CounterD, 36)
idgrpD = Worksheets("Def1").Cells(CounterD, 2)
liforabD = Worksheets("Def1").Cells(CounterD, 11)
cddimD = Worksheets("Def1").Cells(CounterD, 37)
dim1D = Worksheets("Def1").Cells(CounterD, 38)
dim2D = Worksheets("Def1").Cells(CounterD, 39)
dim3D = Worksheets("Def1").Cells(CounterD, 40)
dim4D = Worksheets("Def1").Cells(CounterD, 41)

For CounterM = 2 To 555
idDimDi = Worksheets("Dimension").Cells(CounterM, 1)
idgrpDi = Worksheets("Dimension").Cells(CounterM, 3)
liforabDi = Worksheets("Dimension").Cells(CounterM, 6)
cddimDi = Worksheets("Dimension").Cells(CounterM, 2)
dim1Di = Worksheets("Dimension").Cells(CounterM, 7)
dim2Di = Worksheets("Dimension").Cells(CounterM, 8)
dim3Di = Worksheets("Dimension").Cells(CounterM, 9)
dim4Di = Worksheets("Dimension").Cells(CounterM, 10)

If (idDimD = idDimDi) And (idgrpD = idgrpDi) And (liforabD = liforabDi) And (cddimD = cddimDi) And (dim1D = dim1Di) And (dim2D = dim2Di) And (dim3D = dim3Di) And (dim4D = dim4Di) Then
Worksheets("Def1").Cells(CounterD, 36).Value = Worksheets("Dimension").Cells(CounterM, 1).Value
End If
Next CounterM

Next CounterD

End Sub
0