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 :

Cellule de la feuille 1 égal à combobox de la feuille 2


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 193
    Par défaut Cellule de la feuille 1 égal à combobox de la feuille 2
    Bonjour à tous,

    J'aimerais pouvoir mettre le résultat de ma combobox en colonne AA si dans la feuille1 plage H5:H28 & " " & I5:I28 = feuille2 plage F4:F27.

    Si je trouve feuille1 H9 & " " & I9 = feuille2 F8 alors feuille1 AA9 = combobox.value

    J'ai fait ce code mais il ne fonctionne pas comme il faut, ma combobox rempli toutes mes cellules de AA5 à AA28....
    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
    Private Sub ComboBoxAffectation_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim i As Integer, j As Integer
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        For i = 5 To 28
        For j = 4 To 27
            If ws00.Cells(i, 8).Value & " " & ws00.Cells(i, 9).Value = ws11.Cells(j, 6).Value Then
                ws00.Cells(i, 27).Value = Me.ComboBox1.Value
                Me.ComboBox1.Visible = False
            End If
        Next j
        Next i
    End Sub
    Merci une fois de plus pour l'aide que vous m'apporter.

  2. #2
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 147
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    essaie de remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     For j = 4 To 27
    Next j
    par

    :bug:

  3. #3
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 193
    Par défaut
    Merci pour ton aide

    Il me met une erreur de syntaxe quand je remplace j = 4 to 27 par j = i - 1.

    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
    Private Sub ComboBox1_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim i As Long, j As Long
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        For i = 5 To 28
        For j = i - 1
            If ws00.Cells(i, 8).Value & " " & ws00.Cells(i, 9).Value = ws11.Cells(j, 6).Value Then
                ws00.Cells(j, 27).Value = Me.ComboBox1.Value
                Me.ComboBox1.Visible = False
            End If
        Next j
        Next i
    End Sub
    j'ai essayer aussi ce code mais il me fait la même chose...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub ComboBox1_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim i As Long, j As Long
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        For i = 5 To 28
            If ws00.Cells(i, 8).Value & " " & ws00.Cells(i, 9).Value = ws11.Cells(i - 1, 6).Value Then
                ws00.Cells(i - 1, 27).Value = Me.ComboBox1.Value
                Me.ComboBox1.Visible = False
            End If
        Next i
    End Sub
    Encore merci

  4. #4
    Membre Expert
    Avatar de tototiti2008
    Homme Profil pro
    Formateur/développeur
    Inscrit en
    Octobre 2008
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur/développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 147
    Billets dans le blog
    2
    Par défaut
    Re,

    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
    Private Sub ComboBoxAffectation_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim i As Integer, j As Integer
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        For i = 5 To 28
        j=i-1
            If ws00.Cells(i, 8).Value & " " & ws00.Cells(i, 9).Value = ws11.Cells(j, 6).Value Then
                ws00.Cells(i, 27).Value = Me.ComboBox1.Value
                Me.ComboBox1.Visible = False
            End If
        Next i
    End Sub
    :bug:

  5. #5
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 193
    Par défaut
    Je ne comprend pas pourquoi mais avec ce code aussi cela me rempli toutes mes lignes de AA5 à AA28 avec la valeur de ma conbobox.
    J'aimerais que cela remplisse AA uniquement sur la ligne avec les valeurs égale....

    Citation Envoyé par tototiti2008 Voir le message
    Re,

    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
    Private Sub ComboBoxAffectation_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim i As Integer, j As Integer
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        For i = 5 To 28
        j=i-1
            If ws00.Cells(i, 8).Value & " " & ws00.Cells(i, 9).Value = ws11.Cells(j, 6).Value Then
                ws00.Cells(i, 27).Value = Me.ComboBox1.Value
                Me.ComboBox1.Visible = False
            End If
        Next i
    End Sub

  6. #6
    Membre confirmé
    Homme Profil pro
    Mécanicien avion
    Inscrit en
    Février 2018
    Messages
    193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Mécanicien avion

    Informations forums :
    Inscription : Février 2018
    Messages : 193
    Par défaut
    J'ai réussi a obtenir ce que je voulais avec ce code :

    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
    Private Sub ComboBox1_Change()
        Dim ws00 As Worksheet, ws11 As Worksheet
        Dim adresseCellule As String
     
        Set ws00 = Worksheets("feuille1")
        Set ws11 = Worksheets("feuille2")
     
        adresseCellule = ws11.Application.ActiveCell.Address
     
        With ws00
            .Range(adresseCellule).Offset(1, 17) = Me.ComboBox1.Value
            Me.ComboBox1.Visible = False
        End With
     
    End Sub


    Merci pour votre aide.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/03/2009, 01h58
  2. Réponses: 2
    Dernier message: 30/10/2008, 13h28
  3. Réponses: 1
    Dernier message: 28/11/2007, 09h31
  4. [VB6] Protection de cellules d'une feuille Excel
    Par Carole_Canada dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/02/2006, 19h08
  5. [VBA-E] supprimer le contenu de toutes les cellules d'une feuille
    Par BipBip2 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 13/08/2004, 15h13

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