IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Remplir une cellule selon la date de sa colonne [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2017
    Messages : 11
    Par défaut Remplir une cellule selon la date de sa colonne
    Bonjour à tous.

    Je bloque sur mon code VBA et une aide de votre part serait très (très) appréciée

    Je cherche à remplir un tableau Excel selon la date de la colonne de la cellule considérée.
    Par exemple (cf. photo), je veux que la cellule en date du 04 janvier de l'item 1 soit rempli par une certaine valeur car le 04 janvier est entre le 02 janvier (START DATE) et le 17 janvier (FINISH DATE)
    alors que la cellule en date du 19 janvier ne sera PAS rempli (donc valeur égale à elle même dans mon cas) car hors de l'intervalle 02@17 janvier ...

    Je ne sais pas si c'est clair :S

    Pièce jointe 278503

    Voilà mon code VBA :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Sub getPrice()
     
    Dim i As Integer
    Dim j As Integer
     
    For i = 13 To 19 'vérifier valeur max de i'
        For j = 19 To 60 'vérifier valeur max de j'
     
    If Cells(12, j).Value >= WorksheetFunction.Min(Cells(i, 9).Value, Cells(i, 10).Value) And Cells(12, j).Value <= WorksheetFunction.Min(Cells(i, 9).Value, Cells(i, 10).Value) Then
            Cells(i, j).Value = Cells(i, 13).Value
     
            Else: Cells(i, j).Value = Cells(i, j).Value
     
        End If
     
        Next j
    Next i
     
    End Sub
    MERCI BEAUCOUP !!!

  2. #2
    Membre averti Avatar de Kentarosan
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2017
    Messages : 37
    Par défaut
    Bien le bonjour !
    Tout d'abord, tu as marqué la discussion comme résolue, l'est-elle vraiment ?

    Ensuite, je ne suis pas certain d'avoir bien tout compris mais en gros tu veux savoir si telle ligne a sa date comprise dans l'intervalle, c'est ça ?

    Si oui, tu peux essayer d'utiliser DateDiff("d", date1, date2) dans la condition pour savoir si tu affiches la valeur dans ton autre case ou pas.

    Ça peut donner quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If DateDiff("d", dateLigne, dateMin) > 0 And DateDiff("d", dateLigne, dateMax) < 0 Then
        On affiche la valeur où tu veux
    dateLigne c'est la date renseignée sur l'item en cours et dateMin et dateMax sont les limites de ton intervalle.

    J'espère que ça aidera, hésite pas à reposer la question si il faut.

  3. #3
    Membre habitué
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2017
    Messages : 11
    Par défaut
    Bonjour Kentarosan et merci pour ta réponse.

    Effectivement, peu de temps après mon post j'ai trouvé l'erreur dans mon code. Mais ta suggestion est intéressante et je vais regarder ça de plus près !

    Très bonne continuation ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/08/2015, 11h01
  2. [XL-2003] Sélection d'une plage de cellules selon la date
    Par iIncoming dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 19/07/2013, 18h09
  3. Réponses: 1
    Dernier message: 11/11/2010, 16h48
  4. [XL-2003] remplir une cellule selon donnée tableau
    Par Neptune64 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/09/2010, 01h13
  5. [XL-2007] remplir une cellule en fonction de la date
    Par patricktoulon dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/09/2009, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo