Récupération données via VBA

meldja

XLDnaute Impliqué
Bonjour,
Voici bien longtemps que je n'ai mis les pieds sur ce forum qui m'a énormément apporté à mes débuts.
Voila, j'ai un petit fichier pour la gestion des compétences acquises pour mes stagiaires.
J'ai des items qui sont regroupés par ce qu'on pourrait appelé un titre. Ex pour World

Mise en page :
Modifier l'orientation du document
Modifier les marges

Tableau :
Insérer/supprimer un tableau
Insérer une ligne ou colonne

Ces données se trouvent dans la colonne A
Je coche des cases d'option qui me renvoie une valeur dans la colonne D (1, si c'est acquis et 2 si c'est partiellement acquis.
J'ai ensuite associé un bouton de commande pour récupérer tous les items acquis.
Le problème, c'est que je n'arrive pas à récupérer l'espèce de titre (en couleur dans mon exemple), ou lorsque j'essaie, il revient plusieurs fois car je boucle sur plusieurs cellules et si l'une d'elle contient 1, il me renvoie l'espèce de titre. Je ne sais pas si je suis bien clair ? Je peux envoyer mon fichier, si quelqu'un a envie d'y jeter un coup d'oeil.

Sinon, voici, le code que j'ai commencé.
Code:
Dim x As Integer
For x = 8 To 66

Select Case Range("D" & x)

Case Is = 1
If x = 10 Or x = 11 Then
Range("A150").End(xlUp).Offset(1, 0) = Range("A9")
Range("A150").End(xlUp).Offset(1, 0) = Range("D" & x).Offset(0, -3)
    ElseIf x = 13 Or x = 14 Then
    Range("A150").End(xlUp).Offset(1, 0) = Range("A12")
    Range("A150").End(xlUp).Offset(1, 0) = Range("D" & x).Offset(0, -3)
        ElseIf x = 35 Or x = 36 Then
        Range("A150").End(xlUp).Offset(1, 0) = Range("A34")
        Range("A150").End(xlUp).Offset(1, 0) = Range("D" & x).Offset(0, -3)
Else
Range("A150").End(xlUp).Offset(1, 0) = Range("D" & x).Offset(0, -3)
End If

Merci d'avance et bon week end
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Récupération données via VBA

Bonjour meldja,
je pense que ça sera plus facile pour celui qui veut s'y coller
plus facile et plus agréable car le fichier est bien réalisé

ton fichier en retour
avec une petite modif concernant l'emplacement des résultats recherchés
la macro tient compte uniquement de la partie gauche de la feuille ....... à toi de faire le reste

à+
Philippe

Edit: Nouvelle version avec un petit extra
 

Pièces jointes

  • 111.xls
    157.5 KB · Affichages: 137
  • 111.xls
    157.5 KB · Affichages: 167
  • 111.xls
    157.5 KB · Affichages: 176
Dernière édition:

meldja

XLDnaute Impliqué
Re : Récupération données via VBA

Salut,

Merci pour ta réponse. Tu as amélioré le fichier, mais pas tout à fait répondu à mon problème.
En fait, ce que je n'arrive pas à obtenir, c'est le nom des différentes rubriques (Mise en forme, Mise en page, etc..).
Pour ce qui est des items, pas de soucis. C'est le nom des rubriques que je n'arrive pas à obtenir en une fois.
Tout ce que j'ai trouvé, c'est de tester les cellules correspondant aux items. Le problème, c'est que si plusieurs items d'une rubrique sont sélectionnés, le nom de la rubrique sera recopié plusieurs fois.
Si tu vois ce que je veux dire et que tu as une solution, merci d'avance et bonne journée.
 

meldja

XLDnaute Impliqué
Re : Récupération données via VBA

Re,
Problème résolu.
Trop compliquer pour moi de mélanger plusieurs base de données dans la même feuille.
J'ai opté pour la simplicité. Je devais évaluer plusieurs appli (Word, Excel et PowerPoint) dans la même feuille, ce qui m'obligeait à créer des boucles de toutes sortes ; finalement, j'ai fait un fichier par appli et ça marche.
Merci de votre aide et bonne fin de week end
 

Discussions similaires

Réponses
2
Affichages
152
Réponses
4
Affichages
213

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 182
dernier inscrit
moutassim.amine