![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Re kikoo
j'ai un mega probleme, j'ai le programme VBA suivant et je ne sais pas pourquoi celui ci ne fonctionne pas. Si une bonne ame pouvait eclairer ma lanterne je lui serai infiniment reconnaissant !!!. De plus je tente de receuillir les informations pour construire un tableau dans une feuille independante.Par contre je ne sais pas comment creér des titres de colonnes et y integrer les informations mis en memoire (comme Name, State0 ou encore State1 etc...).je doit obtenir en colonne Bus_Name, Electric_State0, Electric_State1, State0, State1 et en ligne le Name de chake parameter Merci a tous ceux ki pourront m'aider !! Sub crea_tab() ' ' crea_tab Macro ' Macro enregistrée le 22/04/2004 par C056666 ' 'decalration des variables Dim ligne, ligne1 As Long Dim Bus_Name, Electic_State0, Electric_State1, State0, State1, Name As Variant Dim ParamFound As Boolean 'suppression et cration d'un fichier pouvant receuillir les informations Workbooks("bdss").Activate Sheets(2).Delete Worksheets.Add before:=Sheets(2): Sheets(2).Name = "prov" Sheets(1).Select Range(Cells(2, 1), Cells(2, 150)).Copy Sheets(2).Activate Range(Cells(1, 1), Cells(1, 150)).PasteSpecial Sheets(1).Select Application.ScreenUpdating = False 'évite de voir le déplacement entre les feuilles 'calcul du nombre max de ligne de la Feuil1 ligne1 = Range("A65536").End(xlUp).Row 'pour chaque ligne de la feuille For Each Row In Worksheets("Feuil1").Cells(1, 1).CurrentRegion.Rows If Row.Cells(1, 9).Value = "ANA" And Row.Cells(1, 86).Value = "O" Then ParamFound = False 'cherche la valeur "Link" dont le nom correspond au connect des variables ANA sortie For Each Cel In Range("A1:A" & ligne1) If Cel.Value = "Link" And Row.Cells(1, 15).Value = Cel.Cells(1, 12) Then linklin = Cel.Row Bus_Name = Cells(linklin, 2) 'quand "Link" est trouvé redefini une limite à partir de la ligne inférieure For Each newcel In Range("A" & linklin + 1 & ":A" & Range("A65536").End(xlUp).Row) If newcel.Value <> "Parameter" Then 'si différent de "Parameter" recommence à chercher "LINK" If newcel.Value = "Container" Then 'si = "Parameter" copie la ligne dans la feuille 2 linklin1 = newcel.Row 'mise en memoire des informations necessaire à la creation du tableau final Electric_State0 = Cells(linklin1, 118) Electric_State1 = Cells(linklin1, 140) End If 'la boucle s'arrete si la valeur "Link" est trouvé If newcel.Value = "Link" Then Exit For End If Else 'si = "Parameter" copie la ligne dans la feuille 2 ParamFound = True linklin2 = newcel.Row State0 = Cells(linklin1, 102) State1 = Cells(linklin1, 117) Name = Cells(linklin1, 12) Application.ScreenUpdating = True End If Next newcel End If If ParamFound = True Then Exit For End If Next Cel End If Next Row End Sub |
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
Salut,
Päs trés clair ton code malgré les commentaires, un fichier exemple avec les résultats attendus seraient plus faciles pour voir ce qui cloche. Tu as plein de If qui suivent pour qu'ils soients traités il faut que le premier (If Row.Cells(1, 9).Value = "ANA" And Row.Cells(1, 86).Value = "O" Then) soit validé... A+++ |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|