Comment indiquer plusieurs options à l'instruction "With" ?

Bonjour,

Je suis en train de concevoir un outil sous excel afin de pouvoir suivre et rationaliser les processus de recrutement. Chaque feuille comporte une macro en private sub qui automatise les saisies via des listes déroulantes multichoix et déplace les lignes vers une feuille spécifique :

- Parmi la feuille « Candidat », si la colonne P comporte une donnée, alors la ligne concernée est déplacée à la feuille « Planifier Entretien », puis elle est supprimée de la feuille source. Je souhaite pouvoir faire référence aux autres feuilles, par exemple :

  • si des données en colonne Q sont saisies, alors les données sont déplacées à la feuille x
    si des données en colonne R sont saisies, alors les données sont déplacées à la feuille y
    etc

J'ai parcouru de nombreux sujets et tutoriels afin d'avancer sur le développement de cet outil, sans succès.

Pourriez-vous me guider afin de parvenir à concrétiser ceci s'il-vous-plait ? Vous trouverez ci-joint le fichier en question. Je vous remercie de l'aide que vous pourrez m'apporter.

Bonjour,

pas eu le courage ni le temps de fouiller ton code.

Sur le principe ça pourrait donner qq chose comme ça :

Dim sh As Worksheet
' suite...
If saisie_Q Then
    Set sh = Worksheets("FeuilX")
ElseIf saisie_R Then
    Set sh = Worksheets("FeuilY")
Else
    MsgBox "Anomalie": Exit Sub
End If
With sh
    'copie
    .[A1] = la_valeur
End With

eric

Bonjour,

Je vous remercie pour votre aide. Toutefois, je ne parviens pas à faire fonctionner la macro.

J'ai tenté le code suivant :

Dim sh As Worksheet
'[...]
If ActiveCell.FormulaR1C1 = "xo" Then
        Set sh = Worksheets("ENTRETIEN FIXE")
    ElseIf ActiveCell.FormulaR1C1 = "oo" Then
        Set sh = Worksheets("RETENU")
    Else
    MsgBox "Anomalie": Exit Sub
    End If
    With sh
    'copie
    .[Q4] = xo
    .[R4] = oo
    End With
End Sub

Bonjour,

.[Q4] = xo

pour vba xo écrit comme ça est une variable qui doit être initialisée.

Si tu veux écrire la chaine c'est .[Q4] = "xo"

Je te conseille de cocher 'Déclaration obligatoire des variables' dans les options de VBE.

eric

Bonjour,

J'ai suivi l'ensemble des instructions mais malgré de multiples éditions du code, ce n'est pas abouti.Peut-être avez-vous d'autres pistes ? Je vous remercie.

La piste est bonne, c'est toi qui ne sait pas mettre en oeuvre

Par "ce n'est pas abouti" je voulais simplement dire que la macro n'aboutit pas au résultat souhaité. Certes, je ne sais pas, mais j'ai tenté avec les éléments que tu m'a fourni (pendant plusieurs heures...). C'est la raison pour laquelle je sollicite de l'aide et notamment dans cette mise en œuvre (si ce n'est pas trop demandé bien entendu). Merci!

Bonjour,

je ne saurais expliquer autrement et comme tu ne dis rien sur la partie qui te bloque difficile de te donner plus d'explications.

Si tu n'y arrives pas avec le With et bien met 2 fois ton bout de procédure pour les 2 cas. Poiur 5 lignes de code à économiser ne te prend pas la tête.

Et par ailleurs, là mon temps sera surtout consacré aux valises...

eric

Rechercher des sujets similaires à "comment indiquer options instruction"