Choix liste déroulante -Saisie automatique dans un autre tableau

mimilendo35

XLDnaute Nouveau
Bonjour,
Je suis un peu perdue.. j'ai fait plusieurs listes déroulantes avec saisie semi-automatique (tableau vert dans la feuille "Comparaison") et lorsque je vais indiquer un résultat dans chacune des lignes, j'aimerais que ce résultat soit automatiquement recopié dans la colonne correspondante (feuille "Tableau"). Par exemple, si dans la liste déroulante je choisis acétamipride, le résultat indiqué sera directement réécrit dans la colonne acétamipride de la feuille "tableau". Si je choisis autre chose, le résultat sera indiqué dans une autre colonne.
Je vous envoie le fichier en zip pour que ce soit plus simple :D

Merci beaucoup !
 

Pièces jointes

  • Pesticides2.zip
    219.8 KB · Affichages: 53
  • Pesticides2.zip
    219.8 KB · Affichages: 47

job75

XLDnaute Barbatruc
Re : Choix liste déroulante -Saisie automatique dans un autre tableau

Bonjour mimilendo35,

Visiblement vous ne cherchez pas à comprendre et encore moins à adapter mes solutions :rolleyes:

Voyez le fichier joint, j'ai traité les numéros doublons de la feuille "Labo".

A+
 

Pièces jointes

  • Solutions job75(1).xlsm
    357.7 KB · Affichages: 71

mimilendo35

XLDnaute Nouveau
Re : Choix liste déroulante -Saisie automatique dans un autre tableau

Bonjour job75,

J'allais mettre la macro pour les doublons mais en dernier :) Et ce n'est pas vraiment ce que je veux... ma macro "Recherche" mettait les "NR" seulement sous les molécules concernées. C'est à dire que dans la colonne I, s'il y a le mot "Wessling" elle ne mettra les NR que sous les molécules qui ne sont pas présentes dans la feuille "Données" . Je vous la renvoie :

Sub Recherche()
Dim derCol, ln, dico, cell, cel, col, clne
derCol = Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(2, 10), Cells(Cells(Rows.Count, 1).End(xlUp).Row, derCol)).ClearContents
Set dico = CreateObject("Scripting.Dictionary")
For ln = 2 To Range("I" & Rows.Count).End(xlUp).Row
If Not dico.exists(Cells(ln, "I").Value) Then
dico(Cells(ln, "I").Value) = ln
Set cell = Sheets("Données").Range("A2:G2").Find(Cells(ln, "I").Value, lookat:=xlWhole)
If Not cell Is Nothing Then
col = cell.Column
For clne = 10 To derCol
Set cel = Sheets("Données").Columns(col).Find(Cells(1, clne).Value, lookat:=xlWhole)
If cel Is Nothing Then
Cells(ln, clne).Value = "NR"
End If
Next clne
End If
Else
Range(Cells(dico(Cells(ln, "I").Value), 10), Cells(dico(Cells(ln, "I").Value), derCol)).Copy Cells(ln, 10)
End If
Next ln
dico.RemoveAll
End Sub

Ainsi certaines cellules ne contiendront ni "NR", ni une valeur et j'y mettrais autre chose ! Je ne sais pas vraiment si vous voyez ce que je veux dire :)
 

job75

XLDnaute Barbatruc
Re : Choix liste déroulante -Saisie automatique dans un autre tableau

Bonjour mimilendo35,

Ainsi certaines cellules ne contiendront ni "NR", ni une valeur et j'y mettrais autre chose ! Je ne sais pas vraiment si vous voyez ce que je veux dire :)

Maintenant je vois, enfin j'espère...

Code:
Sub Enregistrer()
Dim labo$, col As Variant, ad$, lig As Variant, c As Range
labo = [E10]
With Feuil1 ' CodeName de la feuille "Données"
  col = Application.Match(labo, .Rows(2), 0)
  If IsNumeric(col) Then ad = .Columns(col).Address(True, True, xlR1C1, True)
End With
With Feuil4 'CodeName de la feuille "Tableau"
  lig = Application.Match([E2], .Columns(1), 0)
  If IsError(lig) Then lig = .Cells(.Rows.Count, 1).End(xlUp)(2).Row
  With .Cells(lig, 1).Resize(, .Cells(1, .Columns.Count).End(xlToLeft).Column)
    If ad = "" Then
      .Value = ""
    Else
      .FormulaR1C1 = "=IF(COUNTIF(" & ad & ",R1C),"""",""NR"")"
      .Value = .Value 'supprime les formules
    End If
  End With
  .Cells(lig, 1).Resize(, 9) = Application.Transpose([E2:E10])
  For Each c In [D10:D26]
    col = Application.Match(c, .Rows(1), 0)
    If IsNumeric(col) And c(1, 2) <> "" Then _
      If .Cells(lig, col) = "" Then .Cells(lig, col) = c(1, 2)
  Next
End With
End Sub
Edit : ajouté If .Cells(lig, col) = "" Then dans le dernier test.

Fichier (2).

A+
 

Pièces jointes

  • Solutions job75(2).xlsm
    124.9 KB · Affichages: 27
Dernière édition:

job75

XLDnaute Barbatruc
Re : Choix liste déroulante -Saisie automatique dans un autre tableau

Re,

Dans ce fichier (3) une MFC sur D11:E26 indique les molécules disponibles au laboratoire défini en E10.

Bonne soirée.
 

Pièces jointes

  • Solutions job75(3).xlsm
    126.3 KB · Affichages: 34

Discussions similaires

Statistiques des forums

Discussions
315 133
Messages
2 116 603
Membres
112 802
dernier inscrit
Dan Marc