Probleme d'incrementation via textbox

Bonjour à tous,

Je recherche à récupérer la valeur de ma dernière cellule de colonne incrémenter de +1.

Quand je rentre ma valeur directement via la cellule cela fonctionne.

Mais des lors j'utilise ma textbox 1 pour rentrer une valeur celle ci ne s’incrémente pas.

Pouvez vous me venir en aide

Est un problème de format de cellule

Bonjour

A tester

Bonjour Joco,

Merci de ton retour mais je ne vois aucun changement.

Ma demande fonctionne si je rentre manuellement une valeur dans la dernière cellule mais si je passe par le formulaire çà ne prend pas en compte l’incrémentation.

ne serai ce pas un probleme de format a parametrer dans ma textbox

Bonjour,

Le problème vient effectivement du format de l'incrémentation de ta txtbox dans la cellule.

Si tu rentre des nombres entier alors il faut préciser :

"Range("A" & L).Value = CLng(TextBox1)"

Sinon si c'est des nombres décimaux alors :

Range("A" & L).Value = CDbl(TextBox1)

Tu dois te renseigner sur les formats Long (entier) et Double (décimaux)

J'ai testé ton fichier avec la modif et ça fonctionne

De plus je te préconise d'utiliser la fonction suivante (à placer dans un module) pour récupérer le numéro de la dernière ligne :

Function DerLigne(f As Worksheet, col As Long)

DerLigne = f.Cells(Rows.Count, col).End(xlUp).Row

End Function

Pour l'utiliser il te suffit ensuite d'appeler la fonction de cette façon (en remplacement f par le nom de ta feuille et col par le numéro de colonne concerné) :

L = DerLigne(f, col) + 1

Le fichier de Joco quand à lui a ajouté directement la valeur de la textbox1 dans la cellule H1 mais si je comprends bien il suffit d'ajouter + 1 pour avoir le résultat que tu souhaite soit :

Range("H1").Value = Clng(TextBox1) + 1

Bonne journée ;)

Koko_Swiff,

Merci de ta reponse cela fonctionne parfaitement.

Si je veux mette des lettre avant cela est possible egalement.

Je veux incrementer des codes articles ex "AR 00001" "AR 00002"

Merci pour ton aide

Bonjour,

Oui tu le peux mais dans ce cas ta formule en H1 ne marchera pas car il ne s'agira plus d'un nombre mais de texte.

Le format de l'incrémentation doit dans ce cas être de type Str (string)

Si tu souhaite récupérer le numéro de l'article de cette façon alors 2 solutions :

Faire une nouvelle colonne qui ne comprend que le numéro (que tu peux masquer) et jouer avec celle ci (solution la plus simple)

Néanmoins tu peux jouer directement depuis ta première colonne (qui contiendrais du texte) avec la maitrise des chaînes de caractères.

Pour plus d'info je t'invite à aller regarder ici : https://www.dophis.fr/vba-manipuler-chaine-caractere-texte/

Il y a plein d'autres sites qui peuvent te l'expliquer, j'ai pris le premier qui m'a paru complet ;)

Bonne journée

Bonsoir,

une solution simple afin de rester avec "des nombres" est d'ajouter un format personnalisé sur la colonne avec par exemple : "AR "00000
Ce qui correspond à votre numérotation :

image

@ bientôt

LouReeD

@ LouReeD

Merci de l'astuce, j'avoue que ce n'est pas la première qui me viens en tête alors qu'en réalité elle est vraiment simpliste et évite des lignes de codes !

Elle me sera bien utile ;)

Bonjour Koko_Swiff et LouReeD,

Tout d'abord merci beaucoup vos réponse très utile.

J'ai pris l'option de LouReed qui fonctionne parfaitement en paramétrant les cellules de la colonne A et H1 en Format personnalisé ("AR00000").

Merci beaucoup de votre aide.

Je clos cette discussion.

A bientôt

Bonjour !

merci pour votre retour et vos remerciements !

@ bientôt

LouReeD

Rechercher des sujets similaires à "probleme incrementation via textbox"