Macro sur onglet

Bonjour,

J'ai un fichier Excel avec 30 onglets identiques (formulaire) allant de 3 à 32 , et aussi un onglet "Résultats"

J'ai fait une macro qui commence sur la Sheet 3 et y verifie une condition : que la celulle C8 soit égale à "At Port".

Si c'est le cas, j'aimerai qu'une macro copie une cellule qq lignes en dessous (C13) et la cole sur ma feuille resultat. Cela dans une nouvelle colonne a chaque fois que C8 = At port

Je vous joins mon code actuel si ca permet d'etre plus clair :

Sub macro2()
  ' Declare Current as a worksheet object variable.
         Dim Current As Worksheet
' Loop through all of the worksheets in the active workbook.
         For Each Current In Worksheets

' condition Macro
If Sheets("Sheet3").Range("C8") = "At port" Then
Sheets("Resultats").Range("C3") = Sheets("Sheet3").Range("C8").Value

'Copy valeur en dessous
    Sheets("Sheet3").Select
    Range("C13").Select
    Selection.Copy
    Sheets("Resultats").Select
    Range("C4").Select
    ActiveSheet.Paste
End If
      End Sub

Merci d'avance à vous !

Bonjour,

Plutôt que ton code, tu devrais nous fournir un fichier exemple, avec 3 onglets (par ex.) représentatifs de tes onglets réels, sans données confidentielles...

On pourra alors certainement mieux t'aider.

@ te relire

Yep c'est fait.

Je joins un fichier exemple avec 3 onglets de DATAS et un onglet Resultats.

Merci d'avance si tu peux y jeter un oeil.

Re-,

Euh, tu es sûr de ton fichier?

Dans celui que tu as joint, il n'y a qu'un onglet, et un code complètement différent à celui que tu as présenté....

@ te relire...(avec le bon fichier, cette fois...)

Effectivement il manquait le code. J'ai crée celui ci pour l'exemple et j'avais oublié d'ajouter le code.

Re-,

D'après ce que j'ai compris....

Sub ee()
Dim PremCel As Range
Dim Sh As Worksheet
Set PremCel = Sheets("Resultats").Range("B3")
For Each Sh In Sheets
    If Sh.Name <> "Resultats" Then
        If Sh.Range("C8").Value = "At port" Then
            PremCel.Value = Sh.Name
            PremCel.Offset(1) = Sh.Range("C8").Value
            PremCel.Offset(2) = Sh.Range("C13").Value
            Set PremCel = PremCel.Offset(, 1)
        End If
    End If
Next Sh
End Sub

sinon, il faudra plus de précisions...

Bon courage

Merci beaucoup ! c'est quasiment ça du coup maintenant je vais pouvoir continuer tout seul !

Merci

Rechercher des sujets similaires à "macro onglet"