1 cellule = plusieurs réponse mais pas de vide

LPionel

XLDnaute Nouveau
Bonjour à toutes et à tous!

Je ne sais pas si mon titre est très explicite, mais voici mon problème.

Sur une feuille j'ai deux types de données:
1. des offres d'emplois (en ligne)
2. des sources de diffusion de ces offres (1er colonne)
--> en tête de colonne = Code

C'est donc un tableau de 24x8

Dans ce tableau les données saisies sont "oui" ou rien.
Ainsi, si une offre a été diffusée par une source alors un "oui" sinon rien.

Voilà pour cette feuille.

Ensuite, mon but est de placer dans une première feuille, nommée résumé, un récapitulatif des offres par sources.
Comme il s'agit d'un résumé, je souhaiterais éviter de me retrouver avec 24 sources dont 21 seront vides.
Je cherche donc un moyen pour reconstituer mon tableau avec uniquement des sources qui correspondent à des offres.
Ainsi, j'aurais:
Offre 1 = Source 2,6,15,24
Offre 2 = Source 4,18,19,21,23,24
Offre 3 = Source 1
Offre 4 = Source 3,5,6,19

En général, on utilise 6 sources de diffusion maximum.

Voili voilou

J'espère avoir été clair.

En tous cas merci d'avance pour votre aide

Lionel
 

Jiheme

XLDnaute Accro
Re : 1 cellule = plusieurs réponse mais pas de vide

Bonjour LPionel, le forum

Tout d'abord bienvenue

Si tu veux avoir plus de chance d'avoir de l'aide joins un bout de fichier zippé (50Ko) sans données sensibles, par même si ton explication te paraît claire ce n'est pas le cas pour moi, et je ne suis surement pas le seul.

A+
 

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

Merci,

Erreur rectifiée! ^^

En pièce jointe vous trouverez dans la même feuille:
- le tableau d'origine
- un tableau intermédiaire
- et un tableau final

J'espère que cela sera plus clair

Merci d'avance à tous
 

Pièces jointes

  • exemple.xls
    17 KB · Affichages: 57
  • exemple.xls
    17 KB · Affichages: 61
  • exemple.xls
    17 KB · Affichages: 54

Jiheme

XLDnaute Accro
Re : 1 cellule = plusieurs réponse mais pas de vide

Bonjour LPionnel, re le forum

Désolé, j'ai regardé ton fichier, mais je ne vois pas de solution à ma portée.

Je pense qu'il faut avoir recours au VBA et mon niveau est bien trop faible pour le cas présent. Mais je ne doute pas que le "codistes" émérites que je ne citerais pas de peur d'en oublier, te trouveront une solution "aux petits oignons".

Bonne chance
A+
 

Hervé

XLDnaute Barbatruc
Re : 1 cellule = plusieurs réponse mais pas de vide

bonjour :)

un essai en vba en piece jointe, renvoi en feuille 2

salut
 

Pièces jointes

  • exemple.xls
    25.5 KB · Affichages: 73
  • exemple.xls
    25.5 KB · Affichages: 71
  • exemple.xls
    25.5 KB · Affichages: 63

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

c'est exactement ce que je voulais! ^^

Par contre j'ai quelques questions:
1. le niveau de VB pour faire ce genre de script est-il élevé? (je suis entrain de me former)
2. est-il possible mettre des bordures automatiquement?
3. puis-je faire en sorte que le traitement soit renvoyé vers une autre feuille?
4. (et dernière) si des offres se rajoutent, la macro va-t-elle les prendre en compte?

Voilou

Encore merci c'est "aux petits oignons" ;)
 
Dernière édition:

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

Point 3 résolu! j'ai trouvé la valeur a modifier. Je continu à chercher au cas ou.
Édit: Point 4 résolu aussi! ^^
Reste les 1 et 2
Serait-il possible également que l'on m'explique cela:
nb = Range("a65536").End(xlUp).Row
???

Merci
 
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : 1 cellule = plusieurs réponse mais pas de vide

Bonjour le fil,

pour la 1 je dirais non mais pour mieux comprendre à quoi correspond "For" par exemple mets le curseur dessus et appuie sur F1 (à moins que tu connais déjà cette astuce).
pour la 2:
exemple avec la cellule A3:A25:

Code:
Range("A3:A25").BorderAround LineStyle:=xlContinuous, Weight:=xlThick
Range("A3:A25").Borders(xlInsideHorizontal).Weight = xlThick
Serait-il possible également que l'on m'explique cela:
nb = Range("a65536").End(xlUp).Row
cela permet de trouver la dernière cellule non vide depuis A65536 vers le haut, ".row" donnera la ligne de cette cellule qui sera affecté à "nb".
Tu peux reproduire çà en sélectionnant la cellule A65536 puis tu appuie sur la touche "Fin" en suite "flèche haut".

voilà.
 

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

Bonjour,

Merci pour tes explications. Je ne connaissais pas l'astuce d'avec "F1". Mais mon plus gros problème c'est de ne pas connaitre non plus le VBA :'( snif

Puis-je demander autre chose?
1. Je mets en PJ ce que je souhaiterais obtenir comme résultat.
Mais en gros, dans mon onglet "Résumé", je souhaiterais que le tableau apparaisse plus en bas (cellule en rouge = première cellule).

2. Je n'ai pas réussi à utiliser la fonction VBA pour les bordures ... et surtout je souhaiterais qu'elles s'appliquent uniquement au tableau (avec lignes et colonnes variables) et non pas uniquement sur une plage.
Toujours sur ce tableau, mon dernier souhait serait de pouvoir appliquer automatiquement la mise en forme telle qu'elle apparait dans mon exemple.

3. Concernant toujours "A65536". En fait, qu'est-ce que c'est? Comment la trouve-t-on? Est-ce une énigme ou un calembour? Peut être une piste vers un trésor ... En bon jeunot excelien, ma connaissance se limite au cellule de type "A1, B1, CX2000", donc ...

Merci encore à vous pour l'aide.
A très vite

PS: il n'y aurait pas un Dreamweaver pour VBA par hasard??? ^^ Je sais je rêve
 

Pièces jointes

  • exemple(2).xls
    29.5 KB · Affichages: 62
  • exemple(2).xls
    29.5 KB · Affichages: 72
  • exemple(2).xls
    29.5 KB · Affichages: 69
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : 1 cellule = plusieurs réponse mais pas de vide

Re Bonjour,

1. Je mets en PJ ce que je souhaiterais obtenir comme résultat.
Mais en gros, dans mon onglet "Résumé", je souhaiterais que le tableau apparaisse plus en bas (cellule en rouge = première cellule).

Le tableau n'est pas du tout le même!!!
Quel est le lien entre les deux?

2. Je n'ai pas réussi à utiliser la fonction VBA pour les bordures ... et surtout je souhaiterais qu'elles s'appliquent uniquement au tableau (avec lignes et colonnes variables) et non pas uniquement sur une plage.
Toujours sur ce tableau, mon dernier souhait serait de pouvoir appliquer automatiquement la mise en forme telle qu'elle apparait dans mon exemple.

Ce code s'applique pour un tableau avec lignes et colonnes variable.
la celulle en haut à gauche du tableau ici I15 permet de l'identifier dans le code:
Code:
Range("[B][COLOR=blue]I15[/COLOR][/B]").CurrentRegion.BorderAround LineStyle:=xlContinuous, Weight:=xlThick
Range("[B][COLOR=blue]I15[/COLOR][/B]").CurrentRegion.Borders(xlInsideHorizontal).Weight = xlThick
. Concernant toujours "A65536". En fait, qu'est-ce que c'est?
C'est tout simplement la cellule A65536 colonne A, ligne 65536, correspondant à la dernière ligne d'un tableau Excel version 2003.

Peut être une piste vers un trésor ...

Une partie du code de Leonard de Vinci :D:D:p.
 

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

Le tableau n'est pas du tout le même!!!
Quel est le lien entre les deux?
Comment ça? En feuille 1 le tableau original, en feuille "Résumé" le résultat de la macro (de base). Même feuille cellule I15 le tableau où je souhaiterais qu'il se crée automatiquement et e format de police et de bordure que je souhaiterais qu'il génère.
Après peut être as tu vu une différence du point de vu de ton expertise Excel, mais moi je n'ai rien changé ^^


Code:
Range("[B][COLOR=blue]I15[/COLOR][/B]").CurrentRegion.BorderAround LineStyle:=xlContinuous, Weight:=xlThick
Range("[B][COLOR=blue]I15[/COLOR][/B]").CurrentRegion.Borders(xlInsideHorizontal).Weight = xlThick

Donc avec ce code, appliqué seulement à une cellule, mes bordures se créeront automatiquement à chaque nouvelle ligne ou colonne :D Ça c'est cool. Par contre il n'y a pas d'endroit particulier ou le placer? dans le code j'entends.

C'est tout simplement la cellule A65536 colonne A, ligne 65536, correspondant à la dernière ligne d'un tableau Excel version 2003.

lol suffisait d'y penser ... ^^

Une partie du code de Leonard de Vinci :D:D:p.

Pitêtre ... ^^

Merci en tout cas
 

skoobi

XLDnaute Barbatruc
Re : 1 cellule = plusieurs réponse mais pas de vide

Re,

désolé pour l'incompréhension, j'étais en pleine digestion :D.

Ce code devrait convenir:

Code:
Sub Bouton1_QuandClic()
Dim nb As Long, lg As Long, j As Long
Dim col As Byte, k As Byte
Dim ws As Worksheet


nb = Range("a65536").End(xlUp).Row
Set ws = Sheets("Résumé")
ws.Cells.Clear
i = 14
For col = 2 To 8 'de la colonne 2 à la colonne 8
    k = 9
    i = i + 1
    ws.Cells(i, 9) = Cells(2, col)
    For j = 3 To nb
        If Cells(j, col) = "oui" Then
            k = k + 1
            ws.Cells(i, k) = Cells(j, 1)
        End If
    Next j
Next col
ws.Range("I15").CurrentRegion.BorderAround LineStyle:=xlContinuous, Weight:=xlThin
ws.Range("I15").CurrentRegion.Borders(xlInsideHorizontal).Weight = xlThin
ws.Range("I15").CurrentRegion.Borders(xlInsideVertical).Weight = xlThin
ws.Select
End Sub
 

LPionel

XLDnaute Nouveau
Re : 1 cellule = plusieurs réponse mais pas de vide

salit salut!

Merci encore on y a arrive ... ^^ enfin surtout toi.

Bon voila mon problème, je n'arrive pas à faire que la mise en forme (bordure, format, police) s'applique. Et mon plus énorme problème, est que quand je copie/colle dans le classeur original, ben ça me vide ma feuille ... :s

En gros, je colle le bouton dans la feuille "Résumé" de mon classeur final, et je colle le tableau dans la feuille dédiée (intitulée "suivi des sources") de ce même classeur.

Voilà. J'ai regardé le code mais je pige rien au "k";"i";"j" ... :s

Dans l'attente je m'arrache les cheveux ... ayez pitié de moi ... ne me laissez pas devenir chauve ...

Merci à tous et en particulier à skoobi

PS: en PJ le classeur test avec en feuille "Résumé" le tableau formaté.
Je pige vraiment rien, j'ai utilisé une macro, pour ensuite regarder le code, et essayer de l'insérer (quand je dis insérer, c'est pas un c/c, je cherche ou ça peut aller, mais p'tét je cherche pas bien ...) dans le script initial mais rien.
 

Pièces jointes

  • exemple(2).xls
    40.5 KB · Affichages: 49
  • exemple(2).xls
    40.5 KB · Affichages: 52
  • exemple(2).xls
    40.5 KB · Affichages: 53
Dernière édition:

Discussions similaires

Réponses
9
Affichages
113

Statistiques des forums

Discussions
312 756
Messages
2 091 766
Membres
105 064
dernier inscrit
Voluntaries