![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: avril 2007
Messages: 21
|
Bonjour à tous.
J'ai une nouvelle fois besoin de votre aide, J'essayes d'adapter une macro trouvée sur le forum pour copier une plage de cellules sur une feuille de synthèse. Voilà le code Code:
Sub test()
Dim n As Integer
Dim m As Integer
Dim ligne As Integer
Dim nomfeuille As String
ligne = 1
Sheets.Add After:=Worksheets(Worksheets.Count)
nomfeuille = ActiveSheet.Name
For n = 1 To Sheets.Count
If Sheets(n).Name <> nomfeuille Then
For m = 71 To 71
If Sheets(n).Cells(m, 14) <> "" Then
Sheets(n).Rows(m).Copy Destination:=Sheets(nomfeuille).Rows(ligne + 4)
ligne = ligne + 1
End If
Next m
End If
Next n
End Sub
Sub Copier()
NL = Sheets(1).Range("A71:D71").Rows.Count
Sheets.Add After:=Worksheets(Worksheets.Count)
Set la = ActiveSheet.Range("A8")
For i = 1 To 5
Sheets(i).Range("A71:D71").Copy la.Offset(NL * (i - 1), 0)
Next i
End Sub
2. Je ne sais pas comment l'adapter pour ne pas créer une nouvelle feuille et utiliser une feuille nommée synthèse déjà existante. Merci de votre aide. |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: mars 2007
Localisation: Plougasnou Bretagne (France)
Version Excel : Excel 2000 (PC)
Messages: 750
|
bonjour,
il faut essayer un enregistrement de macro et faire les manip souhaitées : cela devrait bien aider même si le plus souvent l'enregistrement est plus lourd qu'une macro écrite manuellement. bye
__________________
Jacques au revoir, kenavo, goodbye, auf Wiedersehen informations Excel et autres sur mon site perso avec classeurs d'exemples http://www.ideocene.com
|
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: avril 2007
Messages: 21
|
Bonjour dixit.
Mon souci, est que le classeur comporte un cinquantaine de feuilles (articles), qui peuvent être ajouter ou supprimer par d'autres utilisateurs. Si je j'enregistre une macro, elle ne fonctionnera plus dès que quelqu'un aura ajouter ou supprimer une feuille. A+ |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: avril 2007
Messages: 21
|
Re-Bonjour à tous.
Je vais essayer d'être plus clair dans ma demande. J'ai un classeur dont le nombre et le nom des feuilles varient très souvent. Je veux récupérer les zone de cellules A71-N71 de toutes mes feuilles pour les copier (collage spécial, valeurs et formats des nombres) dans une feuille nommée synthèse à partir de la ligne 4. Désolé de ne pouvoir envoyer d'exemple, je n'arrive pas à faire maigrir le classeur. Merci d'avance pour votre aide. |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Accro
Date d'inscription: juillet 2006
Localisation: Nantes
Version Excel : Excel 2003 (PC)
Messages: 1 037
|
Bonsoir patobeur, dixit
Voici un exemple si j'ai bien compris ta demande. Code:
Sub Report()
Dim ws As Worksheet
Dim i As Long
i = 4
Application.ScreenUpdating = False
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "Synthèse" Then
ws.Range("A71:N71").Copy
Sheets("Synthèse").Range("A" & i).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End If
i = i + 1
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
__________________
|
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Accro
Date d'inscription: juillet 2006
Localisation: Nantes
Version Excel : Excel 2003 (PC)
Messages: 1 037
|
Re,
Si tu souhaites conserver les données entre chaque copie, utilise ceci : Code:
Sub Report()
Dim ws As Worksheet
Dim i As Long
Dim lign As Long
lign = Sheets("Synthèse").Range("A65536").End(xlUp).Offset(1, 0).Row
i = 1
Application.ScreenUpdating = False
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "Synthèse" Then
ws.Range("A71:N71").Copy
Sheets("Synthèse").Range("A" & lign + i - 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End If
i = i + 1
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
__________________
Dernière modification par bqtr ; 03/05/2007 à 22h04. |
|
|
|
|
|
#7 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: avril 2007
Messages: 21
|
Merci beaucoup bqtr.
Ca fonctionne très bien, de plus ton idée de conserver les données ne m'était pas venu à l'esprit, mais effectivement ça va m'être très utile. Bonne soirée et à bientôt. |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| Aide pour macro complementaire (ppa) pour powerpoint? | doublenico | Forum Excel | 1 | 03/11/2006 10h38 |
| Aide pour comparaison de cellules | Thierry | Forum Excel | 13 | 16/02/2006 19h55 |
| aide pour copier plage de cellules de fichiers fermés | gilles21 | Forum Excel Downloads - Archives | 5 | 16/02/2005 23h27 |
| aide vba (couleur cellules) pour débutante | Corinne | Forum Excel Downloads - Archives | 10 | 10/02/2004 18h25 |
| Macro Copie Cellules | Ben-Ten | Forum Excel Downloads - Archives | 5 | 26/10/2002 11h15 |