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

[Résolu] Manipulation de Dates [XL2007]

  • Initiateur de la discussion Initiateur de la discussion kraenys
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

K

kraenys

Guest
Bonjour le forum,

Voici mon problème,

J'ai des formules qui fonctionnent très bien et j'aimerai les adapter en code VBA sous un module,

Ces formules traitent des données au départ de type texte qui deviennent des dates par la suite. (on a au départ que les 3 premières colonnes. Puis on complète les autres avec leur formules respectives)

Voici ci-joint le fichier avec les formules et un début de code VBA (le début de code VBA sera sans doute peu utile, mais sait-on jamais?)

Ce que j'aimerai, c'est obtenir le résultat tel qu'il est affiché dans mon fichier, mais en lançant une macro et non en me servant des formules. Je souhaite également que le code puisse s'adapter à un nombre de lignes et de colonnes non prédéfini (d'où la présence de DerLig et DerCol).

Merci d'avance de votre aide.


EDIT: Le fichier étant un peu trop volumineux, j'ai laissé les formules que sur les premières lignes, il suffit de développer pour obtenir toutes les autres lignes.

Bien à vous.

Kraenys
 

Pièces jointes

Dernière modification par un modérateur:
Re : Manipulation de Dates [XL2007]

Bonjour PierreJean,

Effectivement, je me suis fait piéger, le format xlsb n'est pas accepté, j'ai donc du le compresser un peu d'abord^^

Merci de votre aide et de votre réponse extrêmement rapide.

Bien à vous.
 
Re : Manipulation de Dates [XL2007]

Bonjour Pierrejean,

Le résultat convient presque parfaitement, il manque juste une petite chose lors de la quatrième fonction:
tablo(n - 1, 4) = "=Si(F2>E2;""ERREUR"";""*"")"

Celle ci renvoi à tout les coups ERREUR alors que ça ne devrais pas être le cas, je pense qu'elle ne traite que le cas à la ligne 2 et renvoi ce résultat sur toutes les lignes. Il faudrait pouvoir mettre une variable au lieu de 2 et l'incrémenter de 1 à chaque boucle Next, ou quelquechose du type pour pouvoir faire ligne par ligne.

J'ai essayé ceci:
Code:
Dim i
i = 1

...

  tablo(n - 1, 4) = "=Si(Fi>Ei;""ERREUR"";""*"")"

...

   i = i + 1
Next

mais ça ne passe pas, je continu à essayer de résoudre ce problème. 😕 Si vous avez une solution, c'est bien volontiers.😱

Merci de votre aide, je n'aurai pas espéré une réponse si rapide et si proche du résultat attendu! Merci de votre aide

Bien à vous.

Kraenys
 
Dernière modification par un modérateur:
Re : Manipulation de Dates [XL2007]

Petite remontée du post, ne trouvant pas de résultat convenables pour le problème exposé au post précédent, je sollicite votre aide pour ce point.

Bien à vous,

Kraenys
 
Re : Manipulation de Dates [XL2007]

Re

A tester:

Code:
Sub test()
Application.ScreenUpdating = False
ReDim tablo(1 To Range("B" & Rows.Count).End(xlUp).Row - 1, 1 To 4)
For n = 2 To Range("B" & Rows.Count).End(xlUp).Row
  tablo(n - 1, 1) = Left(Range("B" & n), 4) & "/" & Mid(Range("B" & n), 5, 2) & "/" & Right(Range("B" & n), 2)
  tablo(n - 1, 2) = CDate(Right(Range("B" & n), 2) & "/" & Mid(Range("B" & n), 5, 2) & "/" & Left(Range("B" & n), 4)) - 140
  tablo(n - 1, 3) = Date
  tablo(n - 1, 4) = "=SI(F2>E" & n & ";""ERREUR"";""*"")"
Next
For n = LBound(tablo, 1) To UBound(tablo, 1)
  For m = LBound(tablo, 2) To UBound(tablo, 2) - 1
   Cells(1 + n, 3 + m) = tablo(n, m)
  Next
   Cells(1 + n, 7).FormulaLocal = tablo(n, 4)
Next
Application.ScreenUpdating = True
End Sub
 
Re : Manipulation de Dates [XL2007]

Re,

La solution était toute simple, c'est nikel, ça tourne très bien.

Merci beaucoup de votre aide, mon problème est résolu.

Bien à vous.

Kraenys
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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