Faire une macro vba

carine11100 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis en train de créer un fichier excel patients.
Je voudrais que les lignes de A4 à A11 de mon onglet appelé "seance1" se copie automatiquement sur les autres onglets "seance2" " seance 3" " seance 4" ect...

Je ne maitrise pas du tout les macros. J'ai bien essayé en allant sur plusieurs forum mais je suis en échec

Merci pour votre aide

Bonne journée
Carine
A voir également:

4 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, souhaites-tu apprendre les macros?
0
carine11100 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour merci pour votre réponse. oui par la suite, je me pencherais dessus je suis assez autodidacte. Mais la c'est en urgence donc pas trop le temps.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
tu n'as pas précisé où les lignes copiées devaient arriver dans les autres onglets.
il faut copier d'un onglet vers tous les autres?
0
Carine > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour

Pardon les lignes copiées vont aussi de A4 à A12 et oui 1 onglet vers tous les autres
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Carine
 
suggestion:
Option Explicit
Sub carine()
Const nsource As String = "seance1"
Dim rsource As Range, fdest As Worksheet
Set rsource = Intersect(ThisWorkbook.Worksheets(nsource).UsedRange, ThisWorkbook.Worksheets(nsource).Range("4:11"))
For Each fdest In ThisWorkbook.Worksheets
    If fdest.Name <> nsource Then
        rsource.Copy fdest.Range(rsource.Address).Resize(rsource.Rows.Count, rsource.Columns.Column)
    End If
Next fdest
End Sub
0
carine11100 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour

Merci beaucoup pour votre réponse

Quand j'execute la formule il me met une ligne en erreur

Set rsource = Intersect(ThisWorkbook.Worksheets(nsource).UsedRange, ThisWorkbook.Worksheets(nsource).Range("4:11"))


merci beaucoup pour votre aide
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > carine11100 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
quelle erreur?
les lignes à copier sont-elles vides?
0
carine11100 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour

Merci pour votre aide mais j'ai toujours un message d'erreur sur la ligne suivante

Set rsource = ThisWorkbook.Worksheets(nsource).Range("4:11")
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
pourquoi ne réponds-tu pas à mes questions?
quel message d'erreur?
es-tu certaine du nom de l'onglet source?
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

c'est parce que la syntaxe n'est pas bonne.
Voir ceci:

https://docs.microsoft.com/fr-FR/office/vba/api/Excel.Range.Copy
0