Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : executer macro sur plusieurs feuilles [ Langages dérivés / VBA ] (lumiere1808)

lundi 5 mai 2008 à 11:42:54 | executer macro sur plusieurs feuilles

lumiere1808

bonjour, j'ai un souci et j'aurai besoin de votre aide...j'ai creer un macro pour importer dans un tableau les données de mes fichiers mais je n'arrive pas a trouver le code pour la boucle qui permettrai à la macro de s'executer sur chaque feuille numérotée 1, 2 ,3 ... du fichier 3413210.xls et de refaire l'ensemble de la macro sur chacun des fichiers (nommés 3413211, 3413212...) du répertoire. Une précision le nombre de feuilles varie en fonction du fichier (mais toujours au minimum l'onglet feuille 1) et les feuilles numérotées ne sont pas les seules dans le fichier (également feuilles menu, recap...)

voici mon code :

Sub Macro1()

' ouvre le fichier exploitation
    Windows("3413210.xls").Activate
    Sheets("Menu").Select
   
    Cells(11, 38).Select
    region = Cells(11, 38).Value
    EXPLOIT = Cells(15, 38).Value
    MOIS = Cells(13, 38).Value
   
    RESORIG = Cells(18, 38).Value
    AJST = Cells(19, 38).Value
    EXTR = Cells(21, 38).Value
   
'   Passer sur l'onglet de détail

    Sheets("1").Select
    NATURE = Cells(14, 2).Value
   
   ' Passe en revue toutes les lignes de saisie
  
   ' Condition si pas de désignation, aller onglet suivant
      
    ' Sinon stocker les variables
    ligne = 26
For ligne = 26 To 51
Cells(ligne, 2).Select
        TRAVREST = Cells(ligne, 2).Value

If TRAVREST = 0 Then GoTo NOUVELLE_LIGNE

    'Cells(ligne, 1).Select
        POSTE = Cells(ligne, 1).Value
        TRAVREST = Cells(ligne, 2).Value
        AJSTRAV = Cells(ligne, 3).Value
        Index = Cells(ligne, 4).Value
        TRAVDEBUT = Cells(ligne, 5).Value
        TRAVPER = Cells(ligne, 6).Value
        TRAVPERSOUSTR = Cells(ligne, 7).Value
        TRAVFIN = Cells(ligne, 8).Value
        PROV = Cells(ligne, 10).Value
        PROVSANSOBJET = Cells(ligne, 14).Value
        REPRISE = Cells(ligne, 15).Value
       
        'For col = 1 To 15
        '    data(col - 1) = Cells(ligne, col)
        'Next
       
    '   Recopie les données dans la base DATA
        Windows("DATA.xls").Activate
        Sheets("Base de données").Select
       
       
        Cells(ligne - 24, 1).Value = region
        Cells(ligne - 24, 4).Value = EXPLOIT
        Cells(ligne - 24, 6).Value = MOIS
        Cells(ligne - 24, 9).Value = RESORIG
        Cells(ligne - 24, 10).Value = AJST
        Cells(ligne - 24, 11).Value = EXTR
        Cells(ligne - 24, 7).Value = NATURE
        Cells(ligne - 24, 8).Value = POSTE
        Cells(ligne - 24, 12).Value = TRAVREST
        Cells(ligne - 24, 13).Value = AJSTRAV
        Cells(ligne - 24, 14).Value = Index
        Cells(ligne - 24, 15).Value = TRAVDEBUT
        Cells(ligne - 24, 16).Value = TRAVPER
        Cells(ligne - 24, 17).Value = TRAVPERSOUSTR
        Cells(ligne - 24, 18).Value = TRAVFIN
        Cells(ligne - 24, 19).Value = PROV
        Cells(ligne - 24, 20).Value = PROVSANSOBJET
        Cells(ligne - 24, 21).Value = REPRISE

   
       
        Windows("3413210.xls").Activate
        Sheets("1").Select

NOUVELLE_LIGNE:
Next

NOUVEL_ONGLET:
   Sheets("2").Select


   
End Sub


voila merci d'avance de votre aide!
bonne journée


lundi 5 mai 2008 à 13:15:38 | Re : executer macro sur plusieurs feuilles

mortalino

Membre Club


Salut,

pour lister les feuilles de ton classeur, voici le bout de code :

    For i = 1 ToActiveWorkBook.Sheets.Count
        Sheets(i).Select
    Next i
Et pour lister les fichiers d'un répertoire, regarde le snippet de PCPT (et pense au paramètre optionnel) :

http://www.codyx.org/snippet_lister-tous-fichiers-repertoire_198.aspx

@++


( Nouveau forum : Exclusivement Office & VBA/STRON

lundi 5 mai 2008 à 18:09:57 | Re : executer macro sur plusieurs feuilles

zen69

Pour travailler avec plusieurs fichier je te recommande d'utilié vb, mais je ne suis pas sur si c'est une NÉCESSITÉ ABSOLUE...


A toi de voir.




  zen69 aka Ortho Le Profett
  [site web]

lundi 5 mai 2008 à 18:33:32 | Re : executer macro sur plusieurs feuilles

PCPT

Administrateur CodeS-SourceS
bonjour à tous


on parle de macro.... déplacé vers VBA !
merci de faire attention aux thèmes

Prenez un instant pour répondre à ce sondage svp



Cette discussion est classé dans : ligne, macro, select, value, cells


Répondre à ce message

Sujets en rapport avec ce message

[AIDE] Problème Macro Commande De Date [ par ribery91720 ] Bonjour à tousJ'ai fabriqué une macro commande de date sous excel mais j'ai un petit problèmeVoici ma macro :Sub ChangeDate()ligne = 2colonne = 2<br / Macro Excel [ par catbou ] Bonjour,J'ai posé une question hier soir, et au miracle, ce matin j'avais la réponse !!!C'est super génial. Je pensais pouvoir continuer ma macro seul [Macro] Colorier plusieurs cellules selon une ou plusieurs valeurs [ par gmi19oj19 ] Salut,J'ai un fichier Excel et je souhaite modifier, par ligne et sur un certain nombre (fixe) de colonnes, la couleur de fond de mes cellules. Voulan Select avan MsgBox [ par cheyenne ] Bonjour à Tous, J'ai un petit souci car la sélection d'une cellule ne veut pas se faire avant l'appel d'un MsgBox. Elle ne se fait qu'après la dispa Macro - Calcul de rentabilités mensuelles [ par vbaright ] Bonjour,Je souhaite calculer les rentabilités mensuelles avec une macro [soit (B3-B1)/B1,puis (B5-B4/B4), etc...], la solution manuelle n'est pas envi DATAGRIDVIEW rowindex=-1 vb2005 j'y arrive po , ouinnn [ par vercomax ] Bonjour,je dois préciser que je travaille sur une table lié par une relation à une autre.donc, quand je clique sur la nouvelle ligne proposée grace à pb dans macro! [ par sophie44 ] voici deux boucles l'une dans l'autre et j'aimerai que qd celle de "l'intérieur" arrive à "else" (au point (2)),elle reprenne à partir de la première pb dans une fonction [ par raph007 ] voila le point qui ne fonctionne pas c'est le code qui vient apres "position2" il me fait une erreur de selectionqu'en pensé vous????Private Sub cmdto Ca me saoule VBA [ par jenclodedusse ] J'en ai vraiment marre de VBA.je dois faire un programme facile pour mon taffe (je ne suis tout de même pas prohrammeur ou informaticien), et je galèr comment selectionner une case apres filtrage [ par mythiac ] bonjour,j'ai effectué un autofiltrage qui affiche en page intermediaire le tableau filtré. je me sert de cette page pour effectuer des opérations:'der


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,858 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.