Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Incrementation automatique d'un numero avec un macro

  • Initiateur de la discussion Initiateur de la discussion mpire
  • 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 !

M

mpire

Guest
Bonjour tous le monde

je suis nouveau dans le monde VBA est je veux faire un simple macro d’incrémentation d'un numéro ( une adresse ip )

exemple de mon problème

j'ai une cellule qui contient une commande comme ça : Display ip adresse 172.28.30.0

alors je veux un macro qui ajoute +14 pour le dernier partie d’adresse

dans mon cas le résultats doit être : 172.28.30.14


merci d'avance
 
Re : Incrementation automatique d'un numero avec un macro

Bonjour,

faute de fichier et de plus de renseignement:

Sub Plus14()
a = Split(Range("G1"), ".")
b = Mid([G1], 1, 12)
[H1].Value = b & (a(3) + 14)
End Sub
 
Re : Incrementation automatique d'un numero avec un macro

Bonjour

Un code évènementiel qui répond à la question.
Un double click incrémente la dernière valeur.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Data1() As String, Valeur1 As Integer
Data1 = Split(CStr(Target.Value), ".")
Valeur1 = CInt(Data1(3) + 1) ' 1 a modifier en fonction de l'incrément désiré
' Le nombre de chiffre étant variable ( 192.168.1.1  a 192.168.256.xxx ) on construit l'adresse IP avec les octets
Target.Value = Data1(0) & "." & Data1(1) & "." & Data1(2) & "." & Valeur1  
End Sub
[CODE]

A tester

JP
 
Dernière édition:
Re : Incrementation automatique d'un numero avec un macro

Bonjour , merci pour votre reposne est conseil je suis nouveau dans le forum

votre reponse marche mais il ajoute des numero au dernier partie
par exp : 172.28.30.16 en exécutant le macro devient 172.28.30.1630 ?

merci
 
Re : Incrementation automatique d'un numero avec un macro

Bonjour à tous,

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim pas&, s
pas = 14 'à adapter
If InStr(Target, ".") = 0 Then Exit Sub
Cancel = True
s = Split(Target, ".")
s(UBound(s)) = Val(s(UBound(s))) + pas
Target = Join(s, ".")
End Sub
A+
 
Re : Incrementation automatique d'un numero avec un macro

Bonsoir à tous

Si tu veux éviter le double-clic

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Cellules à  modifier
If Target.Address = "$B$3" Then Range("b2").Activate 'B2 est la cellule du résultat

'LA MACRO
End Sub
 
Re : Incrementation automatique d'un numero avec un macro

Bonjour à tous 🙂

@mpire: une correction de la macro que j'ai montré qui faussait le calcul. Désolé.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pas&, s
If Target.Address <> "$B$2" Then
Range("b2").activate
pas = 14 'à adapter
If InStr(Range("b2"), ".") = 0 Then Exit Sub
Cancel = True
s = Split(Range("b2"), ".")
s(UBound(s)) = Val(s(UBound(s))) + pas
Range("b2") = Join(s, ".")
Else
Exit Sub
End If
End Sub

Ensuite pour l'incrementation, tape ( mais pas trop fort!! ) ENTER
 

Pièces jointes

  • furieux.gif
    16.8 KB · Affichages: 50
Dernière édition:
Re : Incrementation automatique d'un numero avec un macro




merci beaucoup
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
12
Affichages
558
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…