Sélectionner colonne selon contenu d'une cellule

Bonjour,

j'ai une liste d'inscriptons pour un cours informatique. Les différents cours (Initiation, Windows 10-11, Internet etc) sont dans les colonnes L à U de ma feuille "Récapitulatif".

Je voudrais y mettre une croix dans la colonne du cours choisi par l'élève (peersonnes de mus de 50 ans! )

Ce renseignement se trouve sur ma feuille en B28 et B30 (possibilité de suivre deux cours)

J'ai fait tout le transfert de ma feuille d'inscription vers un récapitulatif en VBA, mais ici je coince !

Pourriez vous m'aider ?

a toute fin utile, je vous joins mon fichier

Je vous en remercie

Bonjour

Ci joint ma solution

A+ François

Bonjour,

Autre solution :

Sub enregistrer()
Dim WS As Worksheet, i&
Set WsS = Worksheets("Inscriptions")
With Sheets("Récapitulatif")
    ligne = .Range("A" & Rows.Count).End(xlUp).Row + 1
    .Range("A" & ligne) = WsS.Range("B12") 'Nom
    .Range("B" & ligne) = WsS.Range("B14") 'Prénom
    .Range("C" & ligne) = WsS.Range("B16") 'Date Naissance
    .Range("D" & ligne) = WsS.Range("B18") 'Adresse
    .Range("E" & ligne) = WsS.Range("B20") 'Code Postal
    .Range("F" & ligne) = WsS.Range("B22") 'Localité
    .Range("G" & ligne) = WsS.Range("B24") 'Téléphone
    .Range("H" & ligne) = WsS.Range("B26") 'Gsm
    .Range("I" & ligne) = WsS.Range("B36") 'Paiement
    .Range("J" & ligne) = WsS.Range("C39") 'Membre
    .Range("K" & ligne) = WsS.Range("B41") 'Amicale
    .Range("V" & ligne) = WsS.Range("B34") 'Mail
    For i = 12 To 21
    If .Cells(7, i).Value = WsS.Range("B28") Then .Cells(ligne, i).Value = "X"
    If .Cells(7, i).Value = WsS.Range("B30") Then .Cells(ligne, i).Value = "X"
    Next
'-------------------------------------------------
' vider le corps de la facture
'-------------------------------------------------

    WsS.Range("B12:B36") = "" 'vider le corps du document
    WsS.Range("C39").ClearContents 'vider le corps du document
    WsS.Range("B41") = "" 'vider le corps du document
End With
End Sub

Nota : Les titres des différents cours doivent être libellés de manière identique dans les deux feuilles sinon ça marchera moins bien !

A+

Bonjour,

Autre méthode

Sub enregistrer()
    Dim f1 As Worksheet, f2 As Worksheet
    Dim Ligne As Long
    Set f1 = Sheets("Inscriptions")
    Set f2 = Sheets("Récapitulatif")
    Ligne = f2.Range("A" & Rows.Count).End(xlUp).Row + 1
    f2.Range("A" & Ligne).Value = f1.Range("B12").Value 'Nom
    f2.Range("B" & Ligne).Value = f1.Range("B14").Value 'Prénom
    f2.Range("C" & Ligne).Value = f1.Range("B16").Value 'Date Naissance
    f2.Range("D" & Ligne).Value = f1.Range("B18").Value 'Adresse
    f2.Range("E" & Ligne).Value = f1.Range("B20").Value 'Code Postal
    f2.Range("F" & Ligne).Value = f1.Range("B22").Value 'Localité
    f2.Range("G" & Ligne).Value = f1.Range("B24").Value 'Téléphone
    f2.Range("H" & Ligne).Value = f1.Range("B26").Value 'Gsm
    f2.Range("I" & Ligne).Value = f1.Range("B36").Value 'Paiement
    f2.Range("J" & Ligne).Value = f1.Range("C39").Value 'Membre
    f2.Range("K" & Ligne).Value = f1.Range("B41").Value 'Amicale
    f2.Range("V" & Ligne).Value = f1.Range("B34").Value 'Mail

    Col_C1 = Application.Match(f1.Range("B28"), f2.Range("A7:W7"), 0) 'colonne correspondant au Cours 1
    Col_C2 = Application.Match(f1.Range("B30"), f2.Range("A7:W7"), 0) 'colonne correspondant au Cours 2
    f2.Cells(Ligne, Col_C1) = "X" 'Cours1
    f2.Cells(Ligne, Col_C2) = "X" 'Cours2

    '-------------------------------------------------
    ' vider le corps de la facture
    '-------------------------------------------------

    f1.Range("B12:B36") = "" 'vider le corps du document
    f1.Range("C39").ClearContents 'vider le corps du document
    f1.Range("B41") = "" 'vider le corps du document

    Set f1 = Nothing
    Set f2 = Nothing
End Sub

Cdlt

Bonjour,

A tester :

Un grand merci à tous ! vous êtes formidables. Je viens de tester chacune de vos solutions et ... elles sont toutes fonctionnelles. Donc je vais en prendre une ... laquelle ?? peut-être celle dont je coprends le mieux le fonctionnement, car j'aime beaucoup VBA mais je suis loin d'être un expert.

Merci à tous et excellent dimanche.

Rechercher des sujets similaires à "selectionner colonne contenu"