XL 2010 incrémenter une série numérique

issamien

XLDnaute Nouveau
Bonjour la communauté,

Je veux incrémenter une série à partir d'un numéro que j'introduis dans un textbox1 jusqu'à atteindre le nombre que je souhaite, par exemple
j'introduis le code de début 1000 et une quantité 50 que j'introduis dans un textbox2, je dois obtenir
1000
1001
1002
...
1049
j'ai essayé ce code

Private Sub CommandButton6_Click()
On Error Resume Next
With Sheets("inventaire de base").Activate
Range("E1048576").Select
Selection.End(xlUp).Select
Selection.Offset(1, 0).Select
.Value = Val(txtQuantite)
.Resize(Txtcodededebut).DataSeries
.Offset(Txtcodededebut).Resize(Rows.Count - Txtcodededebut - .Row + 1).ClearContents 'RAZ dessous
End With
End Sub
Je ne sais pas elle est ou l'erreur.
 

Staple1600

XLDnaute Barbatruc

issamien

XLDnaute Nouveau
Bonjour le fil,

issamien
Tu as déjà eu une réponse ici, non ?
Bonjour le fil,

oui mon ami, je suis nouveau sur ce forum, j'ai utilisé cette réponse mais je ne sais pas elle est ou l'erreur. si tu peux voir c'est quoi exactement??

Merci énormément
 

Staple1600

XLDnaute Barbatruc
Re

Essaies comme ceci
VB:
Private Sub CommandButton6_Click()
On Error Resume Next
With Sheets("inventaire de base").Range("E1048576").End(xlUp).Offset(1, 0)
.Value = Val(txtQuantite)
.Resize(Txtcodededebut).DataSeries
.Offset(Txtcodededebut).Resize(Rows.Count - Txtcodededebut - .Row + 1).ClearContents 'RAZ dessous
End With
End Sub
 

patricktoulon

XLDnaute Accro
bonjour
et faire joujou avec evaluate ça te chante pas ?

VB:
Sub test()
    tabl = Evaluate("ROW(1000:" & 1050 & ")")    'créé un tableau 2 dim de 51 lignes sur 1 colonne  et rempli des numéro correspondant au index
    MsgBox UBound(tabl)
    Cells(1, 1).Resize(UBound(tabl), 1) = tabl
End Sub
rigolo non?
 

patricktoulon

XLDnaute Accro
re
bonjour Staple1600
ben a tout ceux qui prendront la peine de lire et peut être même tester ;)
c'est encore un exemple étonnant de evaluate(mon joujou préféré) qui non seulement crée le tableau mais y met les nombres a l’intérieur
 

Staple1600

XLDnaute Barbatruc
Re

Étonnant, peut-être, mais connu depuis longtemps (notamment sur le web anglophone ;))
(D'ailleurs, sur ce même web anglophone, certains déconseillent une utilisation à tout crin d'Evaluate)
 

patricktoulon

XLDnaute Accro
re
a tout crin peut être pas
perso ,je sais pas ce qu'ont les anglosaxons avec, mais j'ai pas d'exemple ou jamais vu d'exemple ou le math pure est pris en defaut dans evaluate
 

patricktoulon

XLDnaute Accro
re
oui si tu veux mais entendons nous bien c'est l'expression évaluée qui est limité en terme de caractère et qui demande une certaine rigueur en syntaxe

d'autre part j'aime bien m'en servir en vba pour certaines formules matricielles qui exigent les touche ctrl mag+enter alors que dans une fonction vba walouh!!!

et tout pleins de petit détails comme ça ;)
 

Staple1600

XLDnaute Barbatruc
Re,

=>patricktoulon
Moi, je ne veux rien ;)
J'ai juste noté que:
1) le demandeur avait déjà eu une réponse de job75 dans son autre fil
2) qu'il n'a pas su l'implémenter seul dans son classeur
J'en déduis donc qu'il débute en VBA.
Donc personnellement, j'attendrai un peu avant de lui proposer de l'Array, de l'Evaluate & Cie ;)
 

issamien

XLDnaute Nouveau
Re,

=>patricktoulon
Moi, je ne veux rien ;)
J'ai juste noté que:
1) le demandeur avait déjà eu une réponse de job75 dans son autre fil
2) qu'il n'a pas su l'implémenter seul dans son classeur
J'en déduis donc qu'il débute en VBA.
Donc personnellement, j'attendrai un peu avant de lui proposer de l'Array, de l'Evaluate & Cie ;)
Effectivement staple1600 je débute sur VBA, mais je maîtrise quelques notions qui me permettent de me débrouiller et créer des programmes à moi.

Si vous avez d'autres propostitions qui vont me servir n'hésitez pas mon ami.
Merci encore une fois de l'intérêt que vou avez porter à mon poste vous les deux.
 

Staple1600

XLDnaute Barbatruc
Re

Non, moi je suis juste poli ;)
Je disais bonjour à mapomme

D'autant plus que:
"Une pomme chaque matin, éloigne le médecin"
;)

PS: Je t'avais dit Bonjour à toi dans autre fil ;)

issamien
Tu reviens dans ton fil quand tu veux, parce que là on est en train de digresser ;)
 

issamien

XLDnaute Nouveau
Re

Non, moi je suis juste poli ;)
Je disais bonjour à mapomme

D'autant plus que:
"Une pomme chaque matin, éloigne le médecin"
;)

PS: Je t'avais dit Bonjour à toi dans autre fil ;)

issamien
Tu reviens dans ton fil quand tu veux, parce que là on est en train de digresser ;)
Bonjour à tous (mapomme, joujou et staple6000 hhh)
j'ai réussie à faire le code qui me permet d'incrémenter la série, mais là je suis dans une nouvelle problématique hhh,
Voici le code que j'ai fait

Private Sub CommandButton6_Click()

On Error Resume Next
With Sheets("inventaire de base").Range("E1048576").End(xlUp).Offset(1, 0)
.Value = val(Txtcodededebut)
.Resize(txtQuantite).DataSeries
.Offset(txtQuantite).Resize(Rows.Count - txtQuantite - .Row + 1).ClearContents 'RAZ dessous
End With

Dim lastrow As Integer
Dim valeur As Integer
'renvoie le numéro de la dernière ligne non vide
lastrow = Cells(Rows.Count, 5).End(xlUp).Row
'boucle de la ligne jusq'à la dernière cell non vide
For valeur = Range("A1048576").End(xlUp).Offset(1, 0) To lastrow
Cells(valeur, 1) = Combobatiment.Text
Next valeur
End Sub


PS: voir le fichier pour bien comprendre ma situation

Merci les amis vous êtes top
 

Fichiers joints

Staple1600

XLDnaute Barbatruc
Bonjour issamien

Pour info
Un fichier *.xlsx ne peut pas contenir de code VBA.
Il faut l'enregistrer en *.xlsm

Donc sans ouvrir ton fichier, je sais déjà qu'il ne contient plus aucun code de tes essais VBA.
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas