Créer une macro en fonction de multiples valeurs

Résolu/Fermé
ArthurDrt - 23 août 2021 à 13:16
yg_be Messages postés 22696 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 avril 2024 - 24 août 2021 à 20:57
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
A voir également:

6 réponses

yg_be Messages postés 22696 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 avril 2024 1 471
23 août 2021 à 13:58
bonjour,
veux-tu apprendre à programmer, ou nous demandes-tu de créer le programme pour toi?
0
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
yg_be Messages postés 22696 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 avril 2024 1 471
23 août 2021 à 14:40
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
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
23 août 2021 à 15:28
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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yg_be Messages postés 22696 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 avril 2024 1 471
24 août 2021 à 12:23
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
Merci beaucoup, mon programme fonction grace à votre aide.

Passez une bonne journée !
0
yg_be Messages postés 22696 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 avril 2024 1 471
24 août 2021 à 20:57
parfait, peux-tu alors marquer la discussion comme résolue?
0