problème de numerotation automatique(compteur)

  • Initiateur de la discussion bichon
  • Date de début
B

bichon

Guest
Helo a tous
voici mon code

Private Sub CommandButton9_Click()

Dim i As Byte
Dim J As Byte
Dim TB As Control
Dim Tab1(0 To 5) As String
J = 0
Workbooks.Open FileName:="F:\Metachut2003\Optmet\Archives\Nvellearchive.xls"

For Each TB In Saisieinfos.Controls
If TypeOf TB Is msforms.ListBox Then
If TB.Text <> "" Then Tab1(J) = TB.Text: J = J + 1
End If
Next TB

For i = 0 To Optbase.ListBox2.ListCount - 1
Range("D" & i + 5).Value = Optbase.ListBox2.List(i)
Next i

For J = 0 To UBound(Tab1)
Range("B" & J + 5) = J + 1
Next J
End Sub


explication: a partir d'un bouton controle j'ouvre un classeur ou je copie les données
d'une listbox(listbox2) en D5 D6 Di jusqu'a que toutes les données soit collé
et j'aimerai qu'en B5 B6 Bi il y ai des numerotations en B5 1 B6 2 jusqu'a que la derniere donnée
de la list soit collé Di et que son dernier numero soit en Bi
mon problème du code c'est que pour l'instant dans tout les cas il numerote de 1 a 6 quelque soit le nombre
d'elemernt en D5 D6 ....
j'aimerai que cela corresponde
merci de m'aider a corriger ce code
merci

bichon
 
@

@+Thierry

Guest
Salut JP Bichon,

Pas vraiment étonné que tu n'aies aucune réponse, car rien qu'à lire ce truc j'ai mal à la tête et je n'ai rien compris !

Je ne parviens à faire aucune liaison logique entre le code et les explications que tu donnes... C'est quoi cette boucle sur toutes les ListBox de ton UserForm ? (alors que tu ne parles que de la ListBox2)... En plus tout ceci pour alimenter une Dynamic Array (tableau indéxé séquentiellement) qui semblerait être le moteur de ton compteur... Ouh la la...

Bon Courage à celui/celle qui arrivera à comprendre car là je jette l'éponge !

Bonne Journée
@+Thierry
 
L

LaurentTBT

Guest
Salut, Bichon, Thierry et tout le forum.

Cela faisait longtemps (peu de temps en ce moment)...

Peut-être une simple formule à mettre en B5, sans passer par VBA:
=SI(D5="";"";LIGNE(B5)-4)
Puis tu étires cette ligne sur toutes les lignes suivantes.

NB: N'oublies pas de supprimer la dernière boucle de ton code pour ne pas réécrire tes J sur les formules!!!

Good luck
 
T

Thierry

Guest
J'ai besoin de numéroter, ou double numéroter, ou triple numéroter des planches au formats trés differents tant en largeur qu'en hauteur, sachant que je souhaiterais avancer d'u premier numéro au numéro incrémenté en lignes informatiques.
Comment dois-je faire ???
Merci d'avance
 
@

@+Thierry

Guest
Bonsoir Thierry, le Forum

Tu as dû arriver là par Google... Saches que tu es dans un vrai forum où il n'y a pas que ce fil !!! mais il doit y avoir dans les 40000 posts...

La main page de ce Forum Excel se trouve :
<http://www.excel-downloads.com/html/French/forum/list.php?f=1>

Ensuite, pour te répondre cher homonyme, je n'ai pas vraiment bien compris ta question...

Que veux tu ? un compteur ?
Que sont ces "planches" ?

Je ne sais pas c'est vraiment trop vague pour te répondre...

Exemple Compteur Basic par Formule
Sur un tableau où tu auras la collone "A" réservée au numéros et la colonne "B" au description de tes planches en A1 il y a la valeur 1
Formule en A2 à copier coller sur les ligne nécessaires en colonne "A"
=SI(B2="";"";A1+1)

Exemple Compteur basic par VBA
Sur le Même Tableau en Private Module de Feuille
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
ActiveCell.Offset(-1, -1).Value = Range("A65536").End(xlUp).Value + 1
End If
End Sub

Enfin c'est vraiment pour une première appriche car je n'ai pas capté !

Bonne Nuit
@+Thierry
 

Discussions similaires