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

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 !

CYRIL CAMPAS

XLDnaute Junior
Bonjour,

je débute VBA et je commence déjà à perdre mes cheveux!!!

dans un premier temps, sur mon petit fichier exemple, je cherche à mettre dans une cellule le nombre de jour entre une date de devis et le jour en cours, et j'aimerai que ça se répète sur chaque ligne de mon fichier.

j'ai trouvé comment faire la boucle, mais pas comment mettre en oeuvre le datediff....

auriez-vous quelques pistes ?

voici mes premières lignes de code :



Sub Macro2()
'
' Macro2 Macro
'
Dim D As Date
Sheets("feuil1").Select
Range("A5").Select
début:
Do While ActiveCell.Value <> ""

<<<C'est à ce moment ou j'aimerai qu'une autre cellule affiche mon nombre de jours avec datediff et ensuite qu'il passe à la cellule suivante>>>


ActiveCell.Offset(1, 0).Select
GoTo début
Loop
End Sub


merci d'avance
 
Lone Wolf merci pur tous ces conseils, c'est génial!
Stapple, effectivement, ton code à l'air bien riche aussi, y'a plein de choses que je ne comprends pas aussi, j'dore, ça veut dire que j'ai plein de choses à apprendre!
en tout cas, bien sur Stapple merci pour ton aide aussi, j'ai été débordé par toutes ces superbes réponses et j'ai zappé de tout regarder!!!! trop de passion débordante de ma part!!! pourrais-tu toi aussi détailler ton code s'il te plait ? en plus ça me permettra de voir les différences entre le tien et celui de lone wolf, car j'imagine que comme la langue française, il y a plusieurs façons de dire quelque chose en VBA!
 
Re

@Lone-wolf
Tu sais que je chéris ce principe, non ?
Le KISS 😉

Avant de penser VBA, il y a de quoi faire pour apprendre à exploiter toutes les ressources natives d'Excel
(voir par exemple le fil d'Aimedija 😉)

Au départ, la vocation "basique" des macros, c'est d'éviter les tâches répétitives.

Mais foncer tête baissée dans le VBA quand on débute avec Excel n'est pas forcément pour moi la meilleure des façons d'appréhender cet outil 😉

NB: Ce n'est là qu'une suggestion de ma part.
 
Re

Pour répondre à ceci
en tout cas, bien sur Stapple merci pour ton aide aussi, pourrais-tu toi aussi détailler ton code s'il te plait ?
VB:
'Déclaration variable lig
Public lig$
Sub a()
'lig= première cellule non vide de la colonne C en partant du bas de la feuille
lig = Cells(Rows.Count, 3).End(3).Row
'insertion formule dans colonne E
[E5].Resize(lig - 4) = "=RC[-3]-RC[-4]"
'insertion formule dans colonne F
[F5].Resize(lig - 4) = "=RC[-5]+21"
'lancement de la macro nommée misenforme
miseenforme
End Sub
Private Sub miseenforme()
'Déclaration variable plg
Dim plg As Range
'déterminatation de plage de cellules plg
Set plg = [A5].Resize(lig - 4, 9)
'application d'une mise en forme conditionelle
'le code ci-dessous est le code VBA à peine remanié, obtenu par l'enregistreur de macros
    plg.FormatConditions.Add Type:=xlExpression, Formula1:="=$E5>=21"
    plg.FormatConditions(plg.FormatConditions.Count).SetFirstPriority
    With plg.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 255
        .TintAndShade = 0
    End With
    plg.FormatConditions(1).StopIfTrue = False
End Sub
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 Problème macro
Réponses
4
Affichages
392
Réponses
4
Affichages
544
Réponses
15
Affichages
1 K
Réponses
4
Affichages
686
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…