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 :

vb sur plusieurs feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par défaut vb sur plusieurs feuille
    Bonjour j'ai un petit souci sa fait quelque temps que je n'ai plus manipulé le VB et je bloque sur un problème de gestion de feuille.

    Pour mieux me faire comprendre voici mon algo :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    x=1
     
    tant que cellule Bx+1 <> ""
    x=x+1
     
    Si (cellule Bx(feuille1)) =(cellule A1 a 164(feuille2))
      Als
          (cellule Hx(feuille1)) = "DD"
    sinon
           (cellule Hx(feuille1)) = "ab"
    fin Si
     
    fin tant que

    Voila je pense que cela est compréhensible. Mais je vais bien me replonger dedans ce n'est pas très dur.

    Merci a tous et a toutes

  2. #2
    Membre confirmé Avatar de mentat
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Août 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electrotechnicien
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2009
    Messages : 139
    Par défaut
    Bonjour gus02

    j'ai testé chez moi ça marche, mais je suis débutant j'espère avoir compris ta recherche...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim j As Long
      j = 1
    While Worksheets("feuille1").Range("B" & j).Value <> ""
       If Worksheets("feuille1").Range("B" & j).Value = Worksheets("feuille2").Range("A" & j).Value Then
        Worksheets("feuille1").Range("H" & j).Value = "DD"
       Else
        Worksheets("feuille1").Range("H" & j).Value = "ab"
       End If
    j = j + 1
    Wend
    Bon courage et bon usage.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par défaut presque
    Salut et merci

    C'est presque sa mais non ! lol

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim j As Long
      j = 1
    While Worksheets("feuille1").Range("B" & j).Value <> ""
       If Worksheets("feuille1").Range("B" & j).Value = Worksheets("feuille2").Range("A" & j).Value Then
        Worksheets("feuille1").Range("H" & j).Value = "DD"
       Else
        Worksheets("feuille1").Range("H" & j).Value = "ab"
       End If
    j = j + 1
    Wend
    Ce que j'ai souligné dans le code c'est la que sa bloque en faite sur me feuille 2 j'ai une liste bien definie et a chaque foi il faut tout controlé.
    J'ai du mal a expliqué mais sur la feuille 2 a chaque foi je doit verifié si il n'y a pas equivalence c'est sur 164 cellule

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonsoir,
    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
    Public Sub Verif()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim LastLig As Long
    Dim c As Range
     
    Set ws1 = Worksheets("Feuil1")
    Set ws2 = Worksheets("Feuil2")
    With ws1
        LastLig = .Cells(.Rows.Count, 2).End(xlUp).Row
        For i = 2 To LastLig
            Set c = ws2.Range("A1:A" & ws2.Cells(ws2.Rows.Count, 1).End(xlUp).Row).Find(.Range("B" & i).Value, LookIn:=xlValues, lookat:=xlWhole)
                If Not c Is Nothing Then
                    .Range("H" & i).Value = "DD"
                Else
                    .Range("H" & i).Value = "ab"
                End If
            Set c = Nothing
        Next i
    End With
    Set ws1 = Nothing
    Set ws2 = Nothing
    End Sub

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par défaut parfait
    Merci a tous pour vos réponses alors j'ai fait un petit mélange de code et j'ai aussi changé ma façon d'importer mes données sous excel ce qui ma permis d'établir un code plus simple merci !!!

Discussions similaires

  1. Execution de code sur plusieurs feuilles
    Par anisr dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/12/2006, 11h12
  2. Access export vers Excel sur plusieurs feuilles
    Par oceanediana dans le forum Access
    Réponses: 6
    Dernier message: 10/07/2006, 12h15
  3. macro sur plusieurs feuilles
    Par lolo_bob2 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/06/2006, 16h51
  4. excel VBA comment recopier sur plusieurs feuilles
    Par floflo2006 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/11/2005, 15h56
  5. [excel] même code sur plusieurs feuilles
    Par sabotage dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/11/2005, 12h23

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