IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA - calculer le nombre de zones fusionnées sur une ligne


Sujet :

Macros et VBA Excel

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    983
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 983
    Points : 1 030
    Points
    1 030
    Billets dans le blog
    36
    Par défaut VBA - calculer le nombre de zones fusionnées sur une ligne
    Bonjour à tous,

    Comme toujours un exemple est toujours mieux qu'un long discourt

    J'ai sur la 1ère ligne , 4 zones fusionnées concomitantes depuis la 1ière colonne

    Je veux passer de zone fusionnée en zone fusionnée sachant que la donnée est toujours sur la première cellule de la zone fusionnée.

    Je dois absolument connaitre le nombre de zones fusionnées car je concatène les données de chaque zone et les sépare par une tabulation sachant qu'il est possible qu'aucune donnée soit dans une zone

    Merci par avance pour toute aide

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 370
    Points
    34 370
    Par défaut
    Salut,

    tu as la possibilité de t'attaquer au problème avec les propriétés MergeArea (de type Range)+ Address qui te donneront les infos de nombre de cellules fusionnées et cellule "principale"

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    983
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 983
    Points : 1 030
    Points
    1 030
    Billets dans le blog
    36
    Par défaut
    Bonjour Jean-Philippe,

    Merci pour l'info mais a priori pas de solution simple

  4. #4
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Points : 5 630
    Points
    5 630
    Par défaut
    Bonjour,
    Citation Envoyé par informer Voir le message
    ... a priori pas de solution simple
    Peut-être qu'une solution simple existe mais ta demande n'est pas très claire :
    Citation Envoyé par informer Voir le message
    J'ai sur la 1ère ligne , 4 zones fusionnées concomitantes depuis la 1ière colonne
    Je veux passer de zone fusionnée en zone fusionnée sachant que la donnée est toujours sur la première cellule de la zone fusionnée.
    Concomitant : veut dire qui se produit ou se présente en même temps !
    C'est sûrement pas le cas ...

    Peut-être :
    Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub test()
    Dim cel As Range
      For Each cel In Intersect(ActiveSheet.Rows(1), ActiveSheet.UsedRange).Cells
        If cel.MergeCells And cel.Address = cel.MergeArea.Cells(1, 1).Address Then
          MsgBox cel.MergeArea.Address
        End If
      Next
    End Sub

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    983
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 983
    Points : 1 030
    Points
    1 030
    Billets dans le blog
    36
    Par défaut
    Bonjour Patrice740

    Tu as tout à fait raison, ce n’est pas concomitant mais CONTIGÜES .

    Mais après réflexion il faut oublier CONTIGÜES

    Donc ma problématique est de connaître pour une ligne, le nombre de zones fusionnées et l’adresse de la première cellule pour chaque zone fusionnée.

    Merci pour ton aide

  6. #6
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Points : 5 630
    Points
    5 630
    Par défaut
    Re,
    Citation Envoyé par informer Voir le message
    Donc ma problématique est de connaître pour une ligne, le nombre de zones fusionnées et l’adresse de la première cellule pour chaque zone fusionnée.
    L'adresse, c'est ce que fait le code que je t'ai proposé, il suffit d'y ajouter un compteur.

  7. #7
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    983
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 983
    Points : 1 030
    Points
    1 030
    Billets dans le blog
    36
    Par défaut
    super Patrice740

    J’imagine que si

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim oCells as Cells  
    Set oCells = Intersect(ActiveSheet.Rows(1), ActiveSheet.UsedRange).Celles
    Débug.print oCells.count ‘—-> nombre de zones fusionnées
    Je teste la semaine prochaine

    Encore merci Patrice740

Discussions similaires

  1. VBA Calculer le nombre de mots à l'intérieur d'un code html
    Par Sevun dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/10/2017, 19h22
  2. [MySQL] Calculer un nombre d'heure / semaine à cheval sur 2 mois !
    Par phapha89 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/12/2010, 17h40
  3. [CR XI] Calcul ne nombre de samedi et dimanche pour une période
    Par 007max31 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 26/08/2009, 16h07
  4. calculer le nombre d'occurence de mot dans une chaine
    Par hadjiphp dans le forum Langage
    Réponses: 8
    Dernier message: 20/04/2009, 11h06
  5. Réponses: 9
    Dernier message: 05/04/2009, 03h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo