Auto-incrément ne fonctionne pas correctement

Bonjour,

S'il vous plait j'ai un formulaire qui ne fonctionne pas comme il faut dans la partie auto-incrément le problème exactement est dans la colonne "ID" à chaque fois j'ajoute une donnée, j'ai que le 1 qui se répète.

Voial la méthode que j'ai effectuée est :

le sheet("Data" j'ai inséré dans la cellule C6 =MAX(B9:B99890)

et pour le button ajouter voila le code que j'ai realisé :

DataSH = Sheet("Data")
'set variable for the destination
Set Addme = DataSH.Cells(Rows.count, 3).End(xlUp).Offset(1, 0)
'hold in memory and stop screen flicker
Application.ScreenUpdating = False
If Me.textDate.Value = "" Or Me.textMat.Value = "" Or Me.comShift.Value = "" Then
MsgBox "There is insufficient data, Please return and add the needed information"
Exit Sub
End If
'send the values to the database
With DataSH
Addme.Offset(0, -1) = CInt(DataSH.Range("C6").Value + 1)
Addme.Value = CDbl(CDate(textDate.Value))
Addme.Offset(0, 1).Value = Me.comShift
Addme.Offset(0, 2).Value = Me.textRef
Addme.Offset(0, 3).Value = Me.textSub
Addme.Offset(0, 4).Value = Me.comMachine
Addme.Offset(0, 5).Value = CDbl(CInt(textProduit.Value))
Addme.Offset(0, 6).Value = CDbl(CInt(textQtNc.Value))
Addme.Offset(0, 7).Value = Me.textMat
Addme.Offset(0, 8).Value = Me.comDefect
End With

Merci

Bonjour

Sinon le sujet c'est dans Excel ou Calc ??

Cordialement

Bonjour,

Désolé j'ai oublie, voila le fichier,

pour le code est excel vba

13book0-v2.xlsm (93.33 Ko)

Re

Votre fichier est mis en mode manuel. Donc normal que l'incrément ne se fait pas.

Il faut mettre aller dans les options excel et dans formules, cocher la case Automatique

Je vais voir pour votre code éventuellement

Un truc aussi, ne serait-il pas bon que l'ID vienne automatique à l'ouverture de l'USF ??

cordialement

Bonjour,

Normalement ce que je voulais mais je ne sais pas comment le faire ?

RE

Le code en retour

Private Sub cmdAdd_Click()

Dim DataSH As Worksheet
Dim Addme As Range
'Dim l As Integer
Dim ID

'set the variable
Set DataSH = Sheet1

'error handler
On Error GoTo errHandler:

'set variable for the destination
Set Addme = DataSH.Cells(DataSH.Rows.Count, 3).End(xlUp).Offset(1, 0)

'hold in memory and stop screen flicker
Application.ScreenUpdating = False
If Me.textDate = "" Or Me.textMat = "" Then
    MsgBox "There is insufficient data, Please return and add the needed information"
    Exit Sub
End If
ID = WorksheetFunction.Max(DataSH.Range("B9:B" & DataSH.Range("B" & DataSH.Rows.Count).End(xlUp).Row))

'send the values to the database
With DataSH
'add the unique reference ID then all other values
    Addme.Offset(0, -1) = CInt(ID + 1)
    Addme.Value = CDbl(CDate(textDate.Value))
    Addme.Offset(0, 1).Value = Me.comShift
    Addme.Offset(0, 2).Value = Me.textRef
    Addme.Offset(0, 3).Value = Me.textSub
    Addme.Offset(0, 4).Value = Me.comMachine
    Addme.Offset(0, 5).Value = CDbl(CInt(textProduit.Value))
    Addme.Offset(0, 6).Value = CDbl(CInt(Me.textQtNc.Value))
    Addme.Offset(0, 7).Value = Me.textMat
    Addme.Offset(0, 8).Value = Me.comDefect
End With

'sort the data by
'DataSH.Select
With DataSH
    .Range("B9:H10000").Sort Key1:=.Range("C9"), Order1:=xlAscending, Header:=xlGuess
End With

'clear the values after entry
'Clear

'communicate with the user
MsgBox "Your defect data was successfully added"

'return to interface sheet sheet
Sheet3.Select

'reset the form
On Error GoTo 0
Exit Sub
errHandler:

'if error occurs then show me exactly where the error occurs
MsgBox "Error " & Err.Number & _
" (" & Err.Description & ")in procedure cmdClear_Click of Form UserForm"
End Sub

Vous auriez pu mettre uniquement SHEET1 à la place de DATASH aussi

Si ok et terminé, merci de cloturer le fil en cochant la case à cocher verte à coté du bouton EDITER lors de votre réponse

Cordialement

ça fonctionne très bien , merci beaucoup Dan, J'ai encore une 2 question s'il vous plait et c'est si possible et je vais clôturé, je fais un filtrage élaboré mais ne fonctionne pas comme il faut, est ce vous avez une possibilité de transmettre en code vba sachant que je suis encore débutante en vba, j'ai beaucoup de difficulté ?

Rechercher des sujets similaires à "auto increment fonctionne pas correctement"