Extraction infos des feuilles sauf ...

  • Initiateur de la discussion Initiateur de la discussion yoyo69
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Y

yoyo69

Guest
Bonjour,

Dans le code ci-dessous, je recupere les valeurs dans la feuille [Synthes], les cellules B6, B11, M43, B24, D32 des feuilles du classeur. Mais je veux exclure les feuilles [Synthes] et [-DEVIS-]
Je voudrais meme de preference selectionner les infos uniquement dans les feuilles [POSTE**] soit POSTE 1, POSTE 2, etc ...

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim i%
If Not ActiveSheet.Name = "-DEVIS-" Then Exit Sub
With Sheets("Synthes")
.Range("A2:E65536").ClearContents
For i = 1 To Sheets.Count
If Not Sheets(i).Name = "Synthes" Or Not Sheets(i).Name = "-DEVIS-" Then
.Cells(.Range("A65536").End(xlUp).Row + 1, 1).Value = Sheets(i).Range("B6").Value
.Cells(.Range("B65536").End(xlUp).Row + 1, 2).Value = Sheets(i).Range("B11").Value
.Cells(.Range("C65536").End(xlUp).Row + 1, 3).Value = Sheets(i).Range("M39").Value
.Cells(.Range("D65536").End(xlUp).Row + 1, 4).Value = Sheets(i).Range("B24").Value
.Cells(.Range("E65536").End(xlUp).Row + 1, 5).Value = Sheets(i).Range("D28").Value
End If
Next i
End With
End Sub


Comment corriger ce code, merci
Cordialement, Yoyo
 
Re : Extraction infos des feuilles sauf ...

Bonjour, tu insères ce code dans le code de la feuille "DEVIS" :

Private Sub Worksheet_Activate()
Dim i%
With Sheets("Synthes")
.Range("A2:E65536").ClearContents
For i = 1 To Sheets.Count
If Sheets(i).Name Like "Poste*" Then
.Cells(.Range("A65536").End(xlUp).Row + 1, 1).Value = Sheets(i).Range("B6").Value
.Cells(.Range("B65536").End(xlUp).Row + 1, 2).Value = Sheets(i).Range("B11").Value
.Cells(.Range("C65536").End(xlUp).Row + 1, 3).Value = Sheets(i).Range("M39").Value
.Cells(.Range("D65536").End(xlUp).Row + 1, 4).Value = Sheets(i).Range("B24").Value
.Cells(.Range("E65536").End(xlUp).Row + 1, 5).Value = Sheets(i).Range("D28").Value
End If
Next i
End With
End Sub

Bon courage

PS le nom de l'onglet est POSTE et non Poste (sensible à la casse)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
911
Réponses
15
Affichages
784
Réponses
1
Affichages
323
Réponses
4
Affichages
733
Réponses
10
Affichages
661
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour