2009-07-08 9 views

Répondre

3

Utilisez la fonction Format.

Format("5/11/2009", "DD-MMM-YY") 

Cela renverra:

11-May-09 

Si importe le cas:

UCase(Format("5/11/2009", "DD-MMM-YY")) 

retours:

11-MAY-09 
4

Je crois que vous pouvez utiliser la fonction TEXT pour formater une valeur de date à votre goût.

La chaîne de format "jj-mmm-aa" formaterait "05/11/09" en "11-MAY-09".

1

Essayez ceci:

Sub FormattedText() 
    Dim r As Range 

    On Error Resume Next 
    Set r = Application.InputBox(prompt:="Select cell", Type:=8) 
    If r.Count <> 1 Or r Is Nothing Then 
     Exit Sub 
    End If 
    On Error GoTo 0 

    ActiveCell = "'" & r.Text 

End Sub 

Il mettra le texte d'une cellule sélectionnée (invité) dans la cellule active.

0

Vous devriez pouvoir faire un clic droit sur la cellule et définir le format comme général. Cela vous permettra de mettre quelque chose sans qu'il soit automatiquement formaté pour autre chose. Pour éviter la copie et le collage, vous devez également commencer par mettre la date souhaitée et ne pas la formater puis la copier.

0

Dans VBA, vous pouvez le faire:

Range("B2") = Range("A2") 
Range("B2").NumberFormat = "dd-mmm-yyyy hh:mm:ss" 'Date as 10-Jun-2005 

Si vous devez en boucle alors:

Range("B" & i) = Range("A"& i) 
Range("B" & i).NumberFormat = "dd-mmm-yyyy hh:mm:ss" 'Date as 10-Jun-2005 

Another way to do it.

6
Range("B1").Value = Range("A1").Text 

L'utilisation du .text de la cellule au lieu du modificateur .value copie le formatage du texte au lieu de la date brute.

Chuck

0

Low-tech, mais très moyen facile - le coller dans Word, puis copiez de nouveau dans Excel! Peut prendre un certain temps avec un gros fichier, cependant ... buts fonctionne très bien pour des utilisations uniques!

Questions connexes