Changer le format date

Résolu
nonossov Messages postés 638 Statut Membre -  
nonossov Messages postés 638 Statut Membre -
Bonjour mes amis,

Voici une macro qui fait le deplacement des colonnes.

je vouderai changer le format de la colonne A en format Date de la feuil Output.

et s'il est possible de mettre une condition pour remplir la colonne F: Si la colonne G possitive mettez la lettre "C" sinon "D".

Sub converter()
Dim sh As Worksheet
Dim ws As Worksheet
Dim a As Long
Dim b As Long

Set ws = Sheets("Input")
Set sh = Sheets("Output")

b = ws.Range("A1").End(xlDown).Row
c = sh.Range("A1").End(xlDown).Row
sh.Activate
sh.Range("A2", Cells(c, "I")).Clear
'sh.Range("A2", Cells(c, "I")).Interior.Color = RGB(255, 255, 255)
For a = 2 To b
sh.Cells(a, "C") = ws.Cells(a, "C")
sh.Cells(a, "A") = ws.Cells(a, "G")
sh.Cells(a, "E") = ws.Cells(a, "I")
sh.Cells(a, "B") = ws.Cells(a, "L")
sh.Cells(a, "G") = ws.Cells(a, "M")
sh.Cells(a, "D") = ws.Cells(a, "X")


Next
sh.Range("A2", Cells(b, "A")).NumberFormat = "DD/MM/YYYY"
End Sub


Merci infiniment

1 réponse

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    As tu essayé :
    sh.Range("A2", Cells(b, "A")).NumberFormat = "dd/mm/yy;@"
    

    3
    1. nonossov Messages postés 638 Statut Membre
       
      Merci Mr, ça marche avec bien. Concernant la condition pour remplir la colonne F: Si la colonne G possitive mettez on lets "C" sinon cest "D".
      0
    2. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830 > nonossov Messages postés 638 Statut Membre
       
      Tu fais une formule dans ta feuille ou sinon tu boucles sur tes cellules et tu fais un if
      0
    3. nonossov Messages postés 638 Statut Membre
       
      J'ai bien compris Mr la formule mais je ne sais pas comment puis je boucler les cellules et je fais un if???
      pas compris
      0
    4. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830 > nonossov Messages postés 638 Statut Membre
       
      Un truc du genre :
      dim maplageC as Range
      
      set maplageC = sh.Range("G2", Cells(b, "G"))
      
      for each cellule IN maplageC
        If cellule.value > 0 Then 
           sh.cells(cellule.row,7).value = "C" 
        else
          sh.cells(cellule.row,7).value = "D" 
        End If
      
      Next
      
      0
    5. nonossov Messages postés 638 Statut Membre
       
      Merci infiniment Mr Jordane, j'ai essayé de faire le meme striture pour appliquer cette codition:

      Si le chiffre dans la colonne G est positif je met le chiffre dans la colonne H. si le chiffre dans la colonne G est négatif il reste dans la meme cellule?? mais je n'ai pas pu réussir

      Merci infiniment pour tous.
      0