AIDE SVP
bonjour je veux une macro pour convertir automatiquement mes dates en bon format
j’ai les formats suivants: 20211101 et je veux convertir en 11/01/2021
Bonjour
Teste ceci
Sub Test()
Dim i%, Dl%
Dim Ws As Worksheet
Set Ws = Sheets("Feuil1")
Dl = Ws.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To Dl
Ws.Cells(i, 1) = Mid(Ws.Cells(i, 1), 5, 2) & "/" & Mid(Ws.Cells(i, 1), 7, 2) & "/" & Mid(Ws.Cells(i, 1), 1, 4)
Next i
End Sub
ça marche sauf que il y a encore un souci.
je veux que pour les cellules vides on obtienne l’inscription « NULL »
Re,
La prochaine fois, place toutes les demandes, pour être quitte de revenir 36 fois
Sub Test()
Dim i%, Dl%
Dim Ws As Worksheet
Set Ws = Sheets("Feuil1")
Dl = Ws.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To Dl
If Ws.Cells(i, 1) = "" Then
Ws.Cells(i, 1) = "NULL"
Else
Ws.Cells(i, 1) = Mid(Ws.Cells(i, 1), 5, 2) & "/" & Mid(Ws.Cells(i, 1), 7, 2) & "/" & Mid(Ws.Cells(i, 1), 1, 4)
End If
Next i
End Sub
Merci Mimimathy
j’ai aussi un autre problème:
j’ai 3 colonnes A, B et C
A contient des chaines de caractère
B des nombres
C est à remplir
je souhaite comparer des cellules successives de la colonne A deux a deux.
s’il y a égalité, je veux reporter le minimum parmi les nombres en face dans la colonne c
aidez moi avec une macro svp
ex: a2=ballon et b2=10
a3=ballon et b3=9
je veux qu’on obtienne
c2=9
c3=9
Re,
minimum a renseigner.xlsx (8,2 Ko)
voici comment se présentent les données
Re,
Nul besoin de VBA
Une simple formule suffit
A mettre en C2 et valider par les 3 touches CTRL MAJ et ENTREE et tirer la formule vers le bas
=MIN(SI($A$2:$A$13=A2;$B$2:$B$13))
ça ne marche comme espéré.
il me ramene le minimum de la colonne qui est 0
de plus, j’ai des milliers de lignes, c’est pourquoi je souhaite avoir une fonction pour généraliser et appliquer si j’ai un tel fichier encore
Re,
-1) Il faut lire et faire comme expliqué, et cela fonctionne
minimum a renseigner.xlsx (14,6 Ko)
-) Il faut préciser de nombre de ligne quand on pose des questions, je ne suis pas derrière vous, ni devin
Re,
Teste ceci
Sub Test()
Dim Plage As Range
Dim I As Long
Set Plage = Range("A1:A13")
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For I = 2 To Range("A" & Rows.Count).End(xlUp).Row
Range("C" & I).FormulaArray = "=MIN(IF((" & Plage.Address & "=A" & I & ")," & Plage.Offset(, 1).Address & "))"
Range("C" & I).Value = Range("C" & I).Value
Next I
Application.Calculation = xlCalculationAutomatic
End Sub
Bonjour, je teste et je reviens
SUPER IL MARCHE BIEN
MERCi
Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.