Créer une macro en fonction de multiples valeurs

Résolu
ArthurDrt -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'aurais besoin de renseignements sur la rédaction de ma macro.

J'ai des rapports qui sont extrait sous excel toujours sous le meme format :

Area - Site name - Type - Date - Time - ...

Et j'aurais besoin de créer une feuile par "Area".
Donc, par exemple, sur un tableau de 1000 lignes, j'ai 5 area distinctes.

J'aurai besoin qu'en cliquant sur un bouton, je lance une macro qui reconnait le nombre de differentes "Area" et copie toutes les données relatives à celles-ci dans une nouvelle feuille par Area.

Pouvez-vous m'aider ?

Configuration: Windows / Chrome 92.0.4515.159

6 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    veux-tu apprendre à programmer, ou nous demandes-tu de créer le programme pour toi?
    0
  2. ArthurDrt
     
    J'ai recemment appris a programmer mais je rencontre des difficultés à faire comprendre a mon programme de trouver le nombre de "Area" et en fonction de ces "Area" créer une page avec seulement ces données.

    Le faire une fois est simple mais anticiper le fait que je peux avoir 2 ou 20 Areas differentes est plus complexe pour moi.

    Il serait préférabe quelqu'un m'explique en direct comment faire.

    Mais si vous ne pouvez pas, je suis a la recherche d'une solution donc je veux bien que vous m'envoyer la solution et je comprendrais par moi-meme comment voous avez résolu mon probleme.

    Merci d'avance,
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      as-tu déjà écrit une partie du programme?
      tu donnes peu d'information et aucun exemple.
      comme tu as peu de données, le plus simple n'est-il pas de recopier ligne par ligne vers l'onglet adéquat?
      si les données ne sont pas triées par area, moi le les trierais par area, avant de les copier vers les feuilles de destination.
      0
  3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour tout le monde,

    Peut-être comme ceci :
    Sub AreasInSheet()
    Dim A As Range
        On Error GoTo Fin
        For Each A In ActiveSheet.UsedRange.SpecialCells(xlCellTypeConstants, 2).Areas
            Debug.Print A.Address
        Next
        On Error GoTo 0
        Exit Sub
    Fin:
        MsgBox "La méthode SpecialCells renvoie un résultat vide : erreur."
    End Sub

    0
  4. ArthurDrt
     
    Je vais ecrire une partie du programme avec les réponses que j'ai obtenu et je reviendrai sur le forum pour faire le point.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    exemple d'une boucle:
    dim area as range
    set nomarea=[o2]
    do while nomarea <>""
        '  faire le travail pour l'area ayant le nom nomarea
        set nomarea=nomarea.offset(1)
    loop
    0
  7. ArthurDrt
     
    Merci beaucoup, mon programme fonction grace à votre aide.

    Passez une bonne journée !
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      parfait, peux-tu alors marquer la discussion comme résolue?
      0