¿Cuál es el problema con mi código? Tengo un archivo en excel, después que mis totales pasan de 3 cifras las toma como decimales

Tengo un archivo en excel, que funciona perfecto, cuando voy al listado para imprimir las facturas, imprime los totales como decimales, por qué? Que está mal en el código, no consigo el error:

Private Sub CommandButton7_Click()
'imprimir Cobrades
'listado "Cobrades", "A:C,M:M,K:K"

Application.ScreenUpdating = False
Set h1 = Sheets("Cobrades")
u = h1.Range("C" & Rows.Count).End(xlUp).Row
c = "C"
With h1.Sort
.SortFields.Clear: .SortFields.Add Key:=h1.Range(c & "2:" & c & u)
.SetRange h1.Range("A1:K" & u): .Header = xlYes: .Apply
End With

ant = h1.Cells(2, c)
Set h2 = Sheets("temporal")
h2.Cells.Clear
'ActiveSheet.Name = "grupo " & ant
h1.Rows(1).Copy h2.Rows(1)
h1.Rows(2).Copy h2.Rows(2)
j = 3
For i = 2 To u + 1
If ant <> h1.Cells(i, c) Then
h1.Rows(i).Copy h2.Rows(j)
j = j + 1
End If
ant = h1.Cells(i, c)
Next

h2.Columns("N:N").Delete Shift:=xlToLeft
h2.Columns("L:L").Delete Shift:=xlToLeft
h2.Columns("D:J").Delete Shift:=xlToLeft
h2.Columns("A:E").EntireColumn.AutoFit
h2.Columns("B:B").NumberFormat = "dd/mm/yy"
h2.Columns("E:E").NumberFormat = "#,##0.00 ""€"";[Red]#,##0.00 ""€"""
h2.Columns("C:C").ColumnWidth = 30
h2.Columns("D:D").ColumnWidth = 75
h2.Columns("E:E").ColumnWidth = 20
h2.Rows("1:1").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
h2.Range("A1:E1").Merge
h2.Range("A1") = "Llistat de " & h1.Name & " al " & Format(Date, "dd/mm/yyyy")
h2.Range("A1").HorizontalAlignment = xlCenter
With h2.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 100
End With
h2.PrintPreview

Application.ScreenUpdating = True

End Sub

1 Respuesta

Respuesta
1

Puedes quitar esta línea en la macro

h2.Columns("E:E").NumberFormat = "#,##0.00 ""€"";[Red]#,##0.00 ""€"""

Cambia esa línea por esta:

h2.Columns("E:E").NumberFormat = "#,##0.00"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas