VBA modif code pour ajouter 2 lettres au résultat obtenu

Johan

XLDnaute Occasionnel
Bonjour à tous, le titre peut paraître flou, je vais donc essayer d'être un peu plus clair. Sur la dernière colonne d'un important tableau (32ème colonne donc AF), j'ai une macro qui me permet d'entrer un numéro unique pour la ligne qui m'intéresse à l'aide d'un bouton de commande.

Pour cette année (2016) les numéros sont notés ainsi : 2016001, 2016002, 2016003...

L'objectif est de récupérer toute la ligne à partir d'un classeur.

Je souhaite mtn modifier le code suivant pour pouvoir ajouter "NQ" devant ce numéro (NQ2016001, NQ2016001), tout en conservant la logique du "+1" à chaque fois. Pour comprendre, ssayez d'écrire NQ2016001 dans une cellule et d'incrémenter la ligne/colonne, vous verrez qu'Excel comprendre la logique! c'est un peu ce que je cherche à reproduire.

Voici mon code d'origine sans l'ajout des 2 lettres NQ :


Code:
Sub Numéroter()
    
    Dim n As Long, lig As Long, i As Integer, num As Boolean
    If ActiveCell.Column = 32 Then
        lig = ActiveCell.Row
    Else
        Exit Sub
    End If
    If lig < 2 Then Exit Sub
    num = True
    With ActiveSheet
        For i = 1 To 3
            If .Cells(lig, i) = "" Then num = False
        Next i
        If num Then
            n = Application.Max(Range("AF:AF")) + 1
            If n < 2016000 Then n = n + 2016000
            .Cells(lig, 32).Value = n
        End If
    End With
End Sub

Je joins également un fichier prototype (cf colonne AF, se placer dans une cellule grisée et lancer la macro)

Merci pour votre aide! A votre disposition si besoin de plus de questions
 

Pièces jointes

  • Test ajouter lettres.xlsm
    21.5 KB · Affichages: 30

DoubleZero

XLDnaute Barbatruc
Re : VBA modif code pour ajouter 2 lettres au résultat obtenu

Bonjour, Johan, le Forum,

Un format personnalisé peut être utilisé :

attachment.php


A bientôt :)
 

Pièces jointes

  • Format  personnalisé .JPG
    Format personnalisé .JPG
    45.6 KB · Affichages: 38

Johan

XLDnaute Occasionnel
Re : VBA modif code pour ajouter 2 lettres au résultat obtenu

Bonjour DoubleZero,

C'est vrai que c'est pas bête comme solution, je m'étais jamais trop plongé dans les formats personnalisés.
Du coup j'avais ajouté une colonne et bricolé une formule "=SI(ESTVIDE(AF3);"";"NQ"&AF3)" mais ta solution est mieux,

C'était difficile en passant par VBA, j'avais des problèmes de conversion de données

Merci à toi, @+
 

Discussions similaires

Réponses
5
Affichages
169
Réponses
12
Affichages
438

Statistiques des forums

Discussions
312 111
Messages
2 085 400
Membres
102 883
dernier inscrit
jameseyz