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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| 'vu que le test 1 a échoué, on cherche à l'aide d'une boucle For de transéférer les valeurs de la colonne A feuille -1 dans les lignes correspondantes dans la colonne A feuille actuelle
Function Previous(ByRef pLigne As Variant) As Variant 'pLigne fait référence au ligne de la feuille précédente
Dim comm As Variant, ligne As Variant, i As Integer, var As Variant, trouver As Boolean, InRange As Range, Arg As Range
comm = ActiveSheet.Previous.Cells(Rows.Count, 1).End(xlUp).Row
For ligne = 2 To comm
'MsgBox (ligne)
For i = ActiveSheet.Previous.Index + 1 To Worksheets.Count
'MsgBox (i)
trouver = False
If ActiveSheet.Cells(pLigne, i).Value = ActiveSheet.Previous.Cells(ligne, i).Value Then
Previous = ActiveSheet.Previous.Cells(ligne, 1).Value
Else
Exit For
End If
Next i
Next ligne
End Function
Sub CONVERTIR_DONNE_BRUTES_transfertCOMMENTAIRES()
'
' on converti les données pour aligner les valeurs
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1 _
), Array(14, 1), Array(15, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array _
(20, 1), Array(21, 1)), TrailingMinusNumbers:=True
Columns(1).Clear
Dim comm As Variant, ligne As Variant, bln As Boolean, isheet As Variant, x As Variant
Dim newcomm As Variant, newligne As Variant, newbln As Boolean, newisheet As Variant
comm = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
For ligne = 2 To comm
If IsEmpty(Cells(ligne, 1)) Then
'For isheet = ActiveSheet.Index + 1 To Worksheets.Count
bln = False
ActiveSheet.Cells(ligne, 1).Value = Previous(ligne)
'MsgBox (ligne)
End If
Next ligne
End Sub
'30/02 la macro permet de "scanner" chaque ligne et à chaque ligne on appel
' à la fonction, qui, va récupérer toutes les valeurs de la feuille précédente
'elle est censé comparer les valeurs entres elles et voir si elles ont
'les mêmes valeurs, si la valeur est la même, alors les données de la colonne A
'sont transmises dans les lignes correspondantes
'Je n'arrive pas à appeler une fonction dans la macro , et c'est la fonction citée plus haut
'28/04 la macro appelle enfin la fonction, les valeurs de la colonne A feuille 1 match avec les valeurs des lignes correspondantes !
'il reste à modifier quelques lignes pour l'appliquer au véritable tableau des suspens de l'entreprise , et automatiser la macro en passant par un private sub ! |
Partager