re,
ce chr(160) cause des problèmes dans la macro à xorsankukai, avec un petit modif :
Sub transposition()
Dim tb, ntb()
Dim i, k, j
Dim crédit, débit 'facultatif
With Sheets("import_CRCA")
tb = .Range("A1").CurrentRegion
k = 0
ReDim ntb(1 To UBound(tb, 1), 1 To 5)
For i = 2 To UBound(tb, 1) Step 4
If tb(i, 1) <> "" Then
ntb(k + 1, 1) = Trim(tb(i, 1))
ntb(k + 1, 2) = Trim(tb(i + 1, 1))
ntb(k + 1, 3) = Trim(tb(i + 2, 1))
s = tb(i + 3, 1)
tb(i + 3, 1) = ""
For j = 1 To Len(s)
X = Mid(s, j, 1)
Select Case Asc(X)
Case 43 To 57: tb(i + 3, 1) = tb(i + 3, 1) & X 'éviter ce chr(160) avec tous les moyens
End Select
Next
ntb(k + 1, 4) = IIf(CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) < 0, CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))), "")
If CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) < 0 Then débit = débit + CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) 'facultatif
ntb(k + 1, 5) = IIf(CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) >= 0, CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))), "")
If CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) >= 0 Then crédit = crédit + CDbl(Trim(Replace(tb(i + 3, 1), Chr(160), ""))) 'facultatif
k = k + 1
End If
Next i
If k > 0 Then
.Range("A1").CurrentRegion.Offset(1, 0).ClearContents
.Range("A2").Resize(k, 5) = ntb
End If
Erase tb: Erase ntb
End With
MsgBox "Nombre d'opération(s) : " & k & Chr(10) & "Débit total : " & débit & "€" & Chr(10) & "Crédit total : " & crédit & "€" 'facultatif
End Sub