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

Valeurs correspondantes

  • Initiateur de la discussion Initiateur de la discussion adinnn
  • Date de début Date de début

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 !

adinnn

XLDnaute Occasionnel
Bonjour à tous,

je cherche maintenant à copier les valeurs du Tableau de "feuil1" vers "Database" seulement si la colonne C contient un "x".
J'ai commencé avec la fonction find() mais j'ai de la difficulté à faire la correspondance de la colonne "A" de feuil1 vers la ligne 2 de "database".

Bref, s'il y a un x dans la colonne "c", on copie les "x" dans le tableau de la feuille "database" mais au bon endroit.

Aussi, s'il y a une correspondance de la cellule C3 de feuil1 dans le tableau, il doit y avoir moyen de lire la valeur sur feuille "database" et d'y ajouter les x manquant?

Merci de votre précieuse aide!

**voir fichier joint pour mieux comprendre mon besoin.
 

Pièces jointes

Re : Valeurs correspondantes

Bonjour BigDaddy,

premièrement merci pour la piste de solution. Par contre je cherche à copier les valeurs de Feuil1 vers la feuille Database. C'est pourquoi j'avais ajouté un bouton de contrôle.

Si la valeur "serial # " en C3 n'existe pas en feuille DataBase j'ajoute une ligne et si elle existe j'ajoute les nouvelles valeurs "RTF" dans les cellules correspondantes.

ça semble suffisamment clair?

Merci de ton aide!
 
Re : Valeurs correspondantes

WOW merci! Vraiment impressionnant.

Je ne comprend pas trop, j'ai intégré à mon projet et j'ai un erreur de Variable non définie à la ligne?

Set trouve_colonne = colonne.Find(what:=RTF, LookIn:=xlValues)
.Cells(trouve_ligne.Row, trouve_colonne.Column) = Done
 
Re : Valeurs correspondantes

Re,

un autre essai voir si j'ai bien compris.

Cordialement.

Bonjour BigDaddy,

J'ai modifié quelques peu votre code pour qu'il puisse fonctionner avec un fichier .xls externe appellé DB dans mon cas et ça semble bien fonctionner. J'aimerais par contre maintenant aussi lire les données avec un "x" et les afficher dans ma feuil1 tableau1 en "D" par exemple. Est-ce possible? Je n'arrive pas....

Code:
Dim L As Integer
Dim xls_fichier As Excel.Workbook

Set xls_fichier = GetObject("C:\path\DB.xlsm")

Sheets("CurrentRetrofit").Select

xls_fichier.Windows(1).Visible = True
xls_fichier.Sheets("DataBase").Select

serial = Range("D3")
With xls_fichier.Sheets("DataBase")
    derligne = .Range("B" & Rows.Count).End(xlUp).Row
    test = Application.WorksheetFunction.CountIf(.Range("B:B"), Range("d3"))
    If test = 0 Then
        .Range("B" & derligne + 1) = serial
        derligne2 = Range("A" & Rows.Count).End(xlUp).Row
        dercolonne = .Cells(2, Columns.Count).End(xlToLeft).Column
        For i = 7 To derligne2 - 1
            RTF = Range("A" & i)
            current = Range("E" & i)
            Set colonne = .Range(.Cells(2, 3), .Cells(2, dercolonne))
            Set trouve_colonne = colonne.Find(what:=RTF, LookIn:=xlValues)
            .Cells(derligne + 1, trouve_colonne.Column) = current
        Next i
    Else
        derligne2 = Range("A" & Rows.Count).End(xlUp).Row
        dercolonne = .Cells(2, Columns.Count).End(xlToLeft).Column
        Set ligne = .Range(.Cells(3, 2), .Cells(derligne, 2))
        Set trouve_ligne = ligne.Find(what:=serial, LookIn:=xlValues)
        For i = 7 To derligne2 - 1
            RTF = Range("A" & i)
            current = Range("E" & i)
            Set colonne = .Range(.Cells(2, 3), .Cells(2, dercolonne))
            Set trouve_colonne = colonne.Find(what:=RTF, LookIn:=xlValues)
            .Cells(trouve_ligne.Row, trouve_colonne.Column) = current
        Next i
    End If
End With

xls_fichier.Save
xls_fichier.Close
Set xls_fichier = Nothing
[\CODE]
 
Re : Valeurs correspondantes

Bonjour,

si j'ai bien compris ce que tu souhaites c'est lire tes "x" dans ta base de données et les afficher dans la colonne D de ton tableau de ta feuil1.

Si c'est bien ça pas besoin de code une formule te fais le taff je te joins le dernier fichier que j'avais modifié.

Cordialement.
 

Pièces jointes

Re : Valeurs correspondantes

Bonjour BigDaddy,

premièrement merci pour la réponse rapide. Le problème est que la feuille "DataBase" se retrouve maintenant dans le fichier DB.xlsm. C'est pourquoi j'ai modifié quelques peu votre formule dans le boutons pour y arriver. Je veux éviter d'insérer une formule dans les cellules car je devrais lier les 2 fichiers .xlsm et ainsi éviter des problèmes d'écriture car le fichier sera sur le réseau et partagé...

Le plus simple selon moi serait d'y aller avec une lecture instantanné par un bouton "read" par exemple.

Voilà

Des idées?
 
Re : Valeurs correspondantes

Re,

je comprend bien malheureusement mais sans la structure des deux fichiers difficiles de te sortir qqchose.

As tu la possibilité de fournir qqchose avec des données anonymes pour voir si c'est faisable ?

Cordialement.
 
Dernière modification par un modérateur:
- 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

Réponses
5
Affichages
257
  • Question Question
Microsoft 365 Souci de copie
Réponses
8
Affichages
340
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…