code vba pour informer que la cellule active n'est pas dans la colonne A

  • Initiateur de la discussion Initiateur de la discussion moupa
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

moupa

XLDnaute Junior
Bonjour le forum,

Mon service qualité ma donné un fichier à adapter et corriger pour faire une sauvegarde de ligne dans un autre onglet. Il y avait déjà un macro de faite que j'ai légèrement modifié, mais je cale pour rajouter un critère!
La macro est la suivante
VB:
Sub Archivage()
'
'Création PMO le 31/07/2019
'
vnom = ActiveCell.Value                                     'sélection de la cellule active pour déffinir le nom a archiver

If vnom = "" Then                                           'si le nom de la cellule est vide alors message ci-dessous
    'MsgBox "veuillez Sélectionner un Nom", vbOKOnly + vbExclamation, "Information"
    'Exit Sub
End If

For Each vcellule In [a1:a3000]                             'Sélection de dans la collone A
    If vcellule.Value = vnom Then vselection = vselection & vcellule.Address & "," 'de toutes les cellules ayant le même nom
Next
If Len(vselection) > 0 Then                                 'si la sélection est supérieure à 0 = vrai
    Range(Left(vselection, Len(vselection) - 1)).Font.Strikethrough = True
    Range(Left(vselection, Len(vselection) - 1)).EntireRow.Select           'sélection de la ligne entière
End If
Selection.Copy                                              'copie la sélection

Sheets("Archive PlanAction").Select                         'ouvre l'onglet
    ActiveSheet.Range("a3").End(xlDown).Offset(1, 0).Select 'sélectionne la dernière cellule vide de la colonne A
    Selection.PasteSpecial Paste:=xlPasteAll                'copie spéciale

Sheets("Plan Action en cours").Select                       'retour sur l'onglet principal
Selection.Delete                                            'supprime les lignes qui ont été sélectionés au début
ActiveSheet.Range("A4").Select                              'se repositionne sur la cellule A4

End Sub

Le critère que je voudrais rajouter, puisque la cellule active pourrais être dans une autre colonne que la colonne A
et donc mettre si la cellule active n'est pas dans la colonne A, cela ouvre une msgbox et j'ai tenté ceci:

VB:
If vnom <> Columns(1) Then                              'si le nom de la cellule n'est pas dans la colonne A
   MsgBox "veuillez Sélectionner une cellule en Colonne A", vbOKOnly + vbExclamation, "Information"
 
End If

mais bien sur cela ne fonctionne pas et j'ai une erreur 13!!

quelqu'un aurait une petite idée
par avance merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
146
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
78
Retour