2015-01-19 8 views

risposta

9

Non è possibile formattare una variabile intera, è necessario utilizzare una variabile stringa per la formattazione.

È possibile convertire la parte giorno di una data in un formato con zeri utilizzando la funzione di Day per estrarre il numero del giorno a partire dalla data, e quindi utilizzando la funzione Format con un formato "00" per aggiungere uno zero se necessario

Format (Day (Data), "00")

myDate è una variabile data che contiene il valore di fondo Data

il followin g macro può essere utilizzata come campione di lavoro

Sub Macro1() 
    Dim myDate As Date 

    myDate = "2015-5-1" 

    Dim dayPart As String 

    dayPart = Format(Day(myDate), "00") 

    MsgBox dayPart 
End Sub 
+0

Ho bisogno di applicare questo a un numero generato nel codice non uno in una cella funzionerà allo stesso modo? Posso semplicemente cambiarlo in MyVar.NumberFormat = "00" –

+0

Beh, l'ho provato e ho ottenuto l'errore di run-time '424' Oggetto richiesto sulla riga MyVar.NumberFormat = "00" –

+0

Se questo aiuta a tutto il numero che sono la necessità di formattare è la porzione del giorno di una data che ho estratto da una data fornita tramite un userform. –

1

ho fatto in questo modo:

number_item = 2 
number_item = WorksheetFunction.Text(number_item, "00") 

Questo farà il lavoro.

Problemi correlati