Récupérer sous vba une valeur, modifier et écrire dans un champ

Ghilou14 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je n'ai pas trouvé de réponses
Je suis néophyte en VBA
Question :
Comment écrire une instruction en vba pour aller dans un tableau, rechercher la dernière valeur dans une colonne
récupérer cette valeur
Ajouter 1 à cette valeur
écrire le résultat dans un champ de formulaire

Sheets ("BDClient"). Activate
Range("A1").Select
Selection.End (xlDown).Select

Déclaration de variable
Dim NumVar
NumVar = ???

Merci de votre aide
A voir également:

3 réponses

ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Pour continuer sur ce que tu as fait :

Sheets ("BDClient"). Activate
Range("A1").Select
Selection.End (xlDown).Select


'Déclaration de variable
Dim NumVar
NumVar = Activecell.value + 1 ' tu est sur la cellule active et tu incrémente de 1 sa valeur
 

1
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

A vous d'adapter en fonction de votre besoin.
Quoi-est-ce votre formulaire?

'https://www.commentcamarche.net/faq/36886-methode-find-dans-vba-recherche-de-donnees-sous-excel

Sub test()
    Valeur_Cherchee = 10            'votre valeur a chercher
    Set PlageDeRecherche = ActiveSheet.Columns(1)       'plage de recherche colonne A
    '*******************************
    'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
    Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)
    'traitement de l'erreur possible : Si on ne trouve rien :
    If Trouve Is Nothing Then
        'ici, traitement pour le cas où la valeur n'est pas trouvée
        AdresseTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
    Else
        'ici, traitement pour le cas où la valeur est trouvée
        AdresseTrouvee = Trouve.Address
        Val_Plus_1 = Trouve.Value + 1
    End If
    MsgBox AdresseTrouvee & vbNewLine & vbNewLine & vbNewLine & Val_Plus_1
    'vidage des variables
    Set PlageDeRecherche = Nothing
    Set Trouve = Nothing
End Sub
0
Ghilou14 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Ce que je veux faire c'est :
Une colonne sans doublons comporte des nombres
Se positionner sur la dernières cellules vides de la colonne N°
Récupérer le contenu de cette cellule
Lui ajouter +1
La visualiser dans un formulaire
Lors de l'ajout des données par VBA dans le formulaire, inscrire ce numero+1 sur la ligne + 1 suivi des autres informations
J'ai réussi à écrire sur la dernière ligne vide les autres champs, mais je ne sais pas incrémenter mon numéro.

Comment faire pour écrire en automatique
dernière cellule non vide
Dim NumVar
Valeur_cherchee = cette cellule
NumVar = valeur_cherhchee + 1
txtNumero = NumVar

J'ai besoin d'une incrémentation numérique auto devant chaque ligne de mon tableau

Merci
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

J'ai besoin d'une incrémentation numérique auto devant chaque ligne de mon tableau
Pas claire vos explications
Pouvez mettre votre fichier avec ce que vous voulez pour devant chaque ligne de mon tableau

Pour transmettre un fichier,
Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de piËce jointe tel que cjoint.com

Allez sur ce site : https://www.cjoint.com/
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "CrÈer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une rÈponse...
0