Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Problème VBA

  • Initiateur de la discussion Jean Charles
  • Date de début
J

Jean Charles

Guest
Bonjour le Forum

j'ai créer une macro avec l'enregistreur de macro avec diverses actions (convertir texte en tableau, convertir des dates etc etc )
le problème se pose après avoir transformé un texte en date (=1*(1"/"gauche(c1;nbcar(c1)-2)&"/"&droite(c1;2))
Comment faire pour qu'il reproduise la formule jusqu'au la 1ère cellule vide
je l'ai créer sur 40 lignes et ça marche très bien mais dès que j'en rajoute 20 ça plante (normal VBA le met jusque 40) et mon nombre de ligne peut varie très souvent (entre 600 et 1200)
je vous ai joint un zip
lancer la macro MAJ et voyez ce qu'il se passe en C41

Si quelqu'un avait une solution ça me libérerait d'un gros boulot !!!

Merci à vous tous et toutes et déjà très bon week end a vous
JC
 

Pièces jointes

  • test.zip
    10.2 KB · Affichages: 12
  • test.zip
    10.2 KB · Affichages: 15
  • test.zip
    10.2 KB · Affichages: 17
@

@Christophe@

Guest
Bonjour,

Remplace ton code par le suivant:

Sub MAJ()
Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 9), Array(2, 1), Array(16, 1), Array(19, 2), Array(25, 9), _
Array(27, 1), Array(31, 1), Array(48, 1), Array(53, 1), Array(56, 4), Array(63, 1), Array( _
72, 1)), TrailingMinusNumbers:=True

Range("K1:K" & Range("C65536").End(xlUp).Row).FormulaR1C1 = "=1*(1&""/""&LEFT(RC[-8],LEN(RC[-8])-2)&""/""&RIGHT(RC[-8],2))"
Columns("K:K").Copy
Range("C1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False

With Columns("C:C")
.NumberFormat = "[$-40C]mmm-yy;@"
.ColumnWidth = 8.86
End With

Columns("K:K").Delete Shift:=xlToLeft
Range("A1").Select
End Sub


Bonne journée

@Christophe@
 

Discussions similaires

Réponses
22
Affichages
867
Réponses
3
Affichages
653
Réponses
5
Affichages
506
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…