Może to zadziała:
Option Explicit
Sub KonwersjaDataTekst() ' daty w kolumnie A
Const F As String = "yyyy-mm"
Dim lWiersz As Long
Dim tblDat
On Error GoTo EXIT_ERR
Application.ScreenUpdating = False
'Application.ErrorCheckingOptions.NumberAsText = False
With ThisWorkbook.Sheets("Arkusz3")
lWiersz = .Columns("A").Find("*", SearchOrder:=xlRows, _
SearchDirection:=xlPrevious).Row
tblDat = .Range("A1:A" & lWiersz).Value
tblDat = Application.WorksheetFunction.Transpose(tblDat)
For lWiersz = LBound(tblDat) To UBound(tblDat)
If IsDate(tblDat(lWiersz)) Then
tblDat(lWiersz) = Replace(Format(tblDat(lWiersz), F), "-", "")
End If
Next lWiersz
With .Range("A1:A" & UBound(tblDat))
.Value = Application.Transpose(tblDat)
.NumberFormat = "@" 'użycie prefiksu "'" powoduje wyświetlenie w formacie daty
End With
End With
Application.ScreenUpdating = True
Exit Sub
EXIT_ERR:
Application.ScreenUpdating = True
MsgBox "BŁĄD : " & Err.Number & vbCrLf _
& "OPIS : " & Err.Description
End Sub
r_c |