Bonjour tous, j'ai un petit soucis sur lequel je bute.
J'ai un tableau dans lequel je dois incrementé chaque semaine une colone dont les cellules peuvent avoir les valeurs suivante.
1,2,3,J ou rien
Chaque semaine, les cellules sont incrémentées.
1 -> 3
2 -> 1
3 -> 2
J reste inchangé quoi qu'il arrive.
Deux cellules reprenne le numero de la derniere semaine ou le fichier à été incrémenté ainsi que la semaine courante.
Le problème que je n'arrive pas à résoudre est le suivant:
Lorsque nous seront le premier janvier, la cellule reprennant la derniere mise à jour sera plus elevée que la semaine courante.
du coup ma boucle ne fonctionne plus.
Exemple, nous somme le 2 janvier. donc semaine 1
Le dernier incrément date de la deniere semaine de l'année précédente, donc semaine 52
Brrr problème...
voici mon code:
Sub auto_open()
Sheets("Personnel").OnSheetActivate = "auto"
Sheets("Personnel").Select
End Sub
Sub shift()
Dim lastup As Integer
lastup = Range("AB2").Value
Application.ScreenUpdating = False
For i = [Q100].End(xlUp).Row To 2 Step -1
If Cells(i, 17) <> "J" Then Cells(i, 17).Value = Cells(i, 17).Value - 1
If Cells(i, 17) = 0 Then Cells(i, 17).Value = "3"
Range("AB2").Value = lastup + 1
Next i
End Sub
Sub auto()
Dim boucle As Long
boucle = Range("AB3").Value - Range("AB2").Value
If Range("AB2").Value = Range("AB3").Value Then
If MsgBox("Nothing to update, files ok", vbOKOnly, "Shift auto-update") = vbOK Then Exit Sub
End If
If Range("AB2").Value > Range("AB3").Value Then
If MsgBox("Update impossible", vbOKOnly, "Shift auto-update") = vbOK Then Exit Sub
End If
Do
Application.Run ("shift")
boucle = boucle - 1
If Range("AB2").Value = Range("AB3").Value Then MsgBox "Update OK", , "Shift autoupdate"
Loop Until boucle = 0
Application.ScreenUpdating = True
End Sub
Est ce que quelqu'un saurait me donner un petit conseil ?
D'avance merci