Bonjour,
J'ai un fichier exporté de SAP Business One
1)° Dans les colonnes B, C et L, (en jaune),les données de la ligne se répètent jusqu'au client suivant
code client
nom du client
code mode de paiement
2°) Comment faire pour que les dates soient des dates ?(colonnes orange) (quand on fait F2, cela se met en date et à droite)
La macro fonctionnait très bien et d'un coup, il me dit l'erreur suivante :
Erreur d'exécution 13 sur la ligne
.Cells(i, j) = CDbl(.Cells(i, j))
Je ne comprends pas pourquoi puisque l'extraction est toujours SAP
Merci de votre aide
Sub MisAJour()
With Worksheets("Sheet1")
For i = 2 To .Range("A" & Rows.Count).End(xlUp).Row
' *** remplissage cellules vides colonnes B, C, L
If .Cells(i, 2) = "" Then
.Cells(i, 2) = .Cells(i - 1, 2)
.Cells(i, 3) = .Cells(i - 1, 3)
.Cells(i, 12) = .Cells(i - 1, 12)
End If
' *** mise au "format" date colonnes G et H
If .Cells(i, 7) <> "" Then
.Cells(i, 7) = CDate(.Cells(i, 7))
.Cells(i, 8) = CDate(.Cells(i, 8))
End If
' *** mise au "format" numérique colonnes J à R sauf L
For j = 10 To 18
If j <> 12 Then
If .Cells(i, j) <> "" Then
.Cells(i, j).Replace What:=".", Replacement:=","
.Cells(i, j) = CDbl(.Cells(i, j))
End If
End If
Next
Next
End With
End Sub
J'ai un fichier exporté de SAP Business One
1)° Dans les colonnes B, C et L, (en jaune),les données de la ligne se répètent jusqu'au client suivant
code client
nom du client
code mode de paiement
2°) Comment faire pour que les dates soient des dates ?(colonnes orange) (quand on fait F2, cela se met en date et à droite)
La macro fonctionnait très bien et d'un coup, il me dit l'erreur suivante :
Erreur d'exécution 13 sur la ligne
.Cells(i, j) = CDbl(.Cells(i, j))
Je ne comprends pas pourquoi puisque l'extraction est toujours SAP
Merci de votre aide
Sub MisAJour()
With Worksheets("Sheet1")
For i = 2 To .Range("A" & Rows.Count).End(xlUp).Row
' *** remplissage cellules vides colonnes B, C, L
If .Cells(i, 2) = "" Then
.Cells(i, 2) = .Cells(i - 1, 2)
.Cells(i, 3) = .Cells(i - 1, 3)
.Cells(i, 12) = .Cells(i - 1, 12)
End If
' *** mise au "format" date colonnes G et H
If .Cells(i, 7) <> "" Then
.Cells(i, 7) = CDate(.Cells(i, 7))
.Cells(i, 8) = CDate(.Cells(i, 8))
End If
' *** mise au "format" numérique colonnes J à R sauf L
For j = 10 To 18
If j <> 12 Then
If .Cells(i, j) <> "" Then
.Cells(i, j).Replace What:=".", Replacement:=","
.Cells(i, j) = CDbl(.Cells(i, j))
End If
End If
Next
Next
End With
End Sub