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 :

Retrouver prix en fonction des dates puis copier coller dans feuilles différentes


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 15
    Points : 16
    Points
    16
    Par défaut Retrouver prix en fonction des dates puis copier coller dans feuilles différentes
    Bonjour à tous,

    Après de lonnngues recherche je rame toujours, vu que le forum à l'air efficace je me permets de solliciter votre savoir faire.

    Mon problème est le suivant :
    - J'ai 2 colonnes dans ma feuil2. Des dates dans la colonne A et des prix dans la colonne B (J'ai un historique de prix à chaque heures donc 24 cellules pour 1 jour)
    - Dans ma Feuil1 j'ai 2 cellules B12 et C12 qui sont 2 dates. Ces deux dates constituent un intervalle de dates.

    Je voudrais sélectionner tous les prix de ma feuil2 qui correspondent à cet intervalle de dates.
    Une fois ces prix sélectionnés dans la Feuil2 je veux les coller dans la colonne E dans la Feuil1.

    Quelqu'un aurait une idée d'une macro faisant cela??? Je tourne en rond.

    - Enfin dernière chose. Dans ma Feuil1 j'ai une liste de jours fériés. Je voudrais que ces jours fériés de ma feuil1 soient mis en gras et couleur dans ma feuil2... J'ai essayer de faire une mise en forme conditionnelle mais ça ne fonctionne pas ...


    * Merci *

    MonExemple.xlsx

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    1-Tu copies feuil2

    2- Tu lis http://mhubiche.developpez.com/vba/f...ions/datetime/

    3- Tu appliques avec un if


    Voila un code qui fonctionne, tu n'as plus qu'à adapter

    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 b()
     
    Sheets("Feuil1").Select
     
    With ThisWorkbook.Sheets("Feuil1")
    'Précisez le nom de votre feuille
                For i = .Range("A" & .Rows.count).End(xlUp).Row To 2 Step -1
     
    'Rows.count permet de retourner le nombre de ligne de la plage range
                            If DateValue(Range("A" & i)) < DateValue(Range("D1")) Then
                              .Rows(i).delete
                            ElseIf DateValue(Range("A" & i)) > DateValue(Range("E1")) Then
                            .Rows(i).delete
     
                            End If
                Next i
    End With
     
    End Sub

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Août 2014
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    merci bcp !!!

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2014
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Pour ceux que ça intéresseraient je vous transmets le code que j'ai effectué grâce à toi et qui fonctionne bien.
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Public Sub cmdGo_clicki()
     
    Dim oShFeuil2 As Worksheet
    Dim oShFeuil1 As Worksheet
    Dim bFin As Boolean
    Dim iLig As Integer
    Dim dtDeb As Date
    Dim iLigEcrite As Integer
    Set oShFeuil1 = Worksheets("Feuil1")
    dtDeb = oShFeuil1.Range("B12").Value
    dtFin = oShFeuil1.Range("N3").Value
     
    iLigEcrite = 12
    Set oShFeuil2 = Worksheets("Feuil2")
    bFin = False
    iLig = 2
    While Not bFin
        If DateDiff("d", dtDeb, oShFeuil2.Range("A" & iLig).Value) >= 0 Then
            If DateDiff("d", dtFin, oShFeuil2.Range("A" & iLig).Value) <= 0 Then
                oShFeuil1.Range("E" & iLigEcrite).Value = oShFeuil2.Range("B" & iLig).Value
                iLigEcrite = iLigEcrite + 1
            End If
        End If
        iLig = iLig + 1
     
        If oShFeuil2.Range("A" & iLig).Value = "" Then
        bFin = True
        End If
        Wend
     
        Set oShFeuil2 = Nothing
        Set oShFeuil1 = Nothing
     
        MsgBox "Terminé !", vbInformation
     
        End Sub
    Un grand merci à toi had4789

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

Discussions similaires

  1. Copier coller en fonction des dates
    Par hortencia dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 02/12/2011, 10h51
  2. [OpenOffice][Tableur] Macro Copier/Coller dans Feuille 2
    Par marie6631 dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 12/07/2010, 13h22
  3. Réponses: 1
    Dernier message: 06/02/2009, 17h58
  4. [VBA-E] Comment copier des dates du contrôle calendar dans une boite de texte
    Par jeanpierreco dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/02/2007, 07h18
  5. [Conception] Prix en fonctions des périodes
    Par developpertun dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 05/04/2006, 12h26

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