enregistrement ds des colonnes différentes

  • Initiateur de la discussion Initiateur de la discussion bpol
  • 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 !

bpol

XLDnaute Impliqué
bonjour le forum,

le but que je recherche est d'enregistrer des données ds des colonnes différentes suivnt une cellule avec liste déroulante
je vous joins un exemple.

Merci d'avance
bpol
 

Pièces jointes

Re : enregistrement ds des colonnes différentes

Salut bpol,

Je pense que la solution passe par ce bon vieux VBA 😉
Qu'elle est la donnée qui est saisie en dernière, c'est le 'Temp' !?

A+
 
Re : enregistrement ds des colonnes différentes

Re, bpol

Désolé 😱 , le code se trouve dans Feuil1
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  ' Vérifie si la modification est faite dans la cellule D13
  If Target.Address <> "$D$13" Then Exit Sub
  '
  Dim ColF As Integer, DerLig As Integer, VSearch As String
  VSearch = ActiveSheet.Range("A13").Value
  ' Recherche de la valeur de la liste déroulante
  ColF = ColFind("Feuil2", 1, VSearch)
  ' Si la valeur à été trouvée
  If ColF <> 0 Then
    DerLig = Sheets("Feuil2").Cells(65536, ColF).End(xlUp).Row + 1
    ' Inscrit le numéro de voiture
    Sheets("Feuil2").Cells(DerLig, ColF).Value = ActiveSheet.Range("C13")
    ' Inscrit le temps
    Sheets("Feuil2").Cells(DerLig, ColF + 1).Value = ActiveSheet.Range("D13")
    ' Message d'information
    MsgBox "Valeurs enregistrées", vbInformation, "TOUT EST OK ...."
  Else
    MsgBox "Impossible de trouver : " & VSearch & " sur la ligne 1 de 'Feuil2"
  End If
End Sub

J'utilise également une fonction, qui se trouve dans module 'Fonctions"
Code:
Function ColFind(Feuil As String, NumLig As Integer, Quoi)
  On Error Resume Next
  With Sheets(Feuil).Rows(NumLig)
    ColFind = .Find(What:=Quoi, LookIn:=xlValues, LookAt:=xlWhole, SearchDirection:=xlNext, _
      SearchOrder:=xlByColumns, MatchCase:=False).Column
  End With
  On Error GoTo 0
End Function

Voilà 😉
 
Re : enregistrement ds des colonnes différentes

Salut Bpol,

Comme suite à ta demande, voici le code pour le faire fonctionner via un bouton 😉

Code:
Sub ValidationDonnees()
  Dim ColF As Integer, DerLig As Integer, VSearch As String
  VSearch = ActiveSheet.Range("A13").Value
  ' Recherche de la valeur de la liste déroulante
  ColF = ColFind("Feuil2", 1, VSearch)
  ' Si la valeur à été trouvée
  If ColF <> 0 Then
    DerLig = Sheets("Feuil2").Cells(65536, ColF).End(xlUp).Row + 1
    ' Inscrit le numéro de voiture
    Sheets("Feuil2").Cells(DerLig, ColF).Value = ActiveSheet.Range("C13")
    ' Inscrit le temps
    Sheets("Feuil2").Cells(DerLig, ColF + 1).Value = ActiveSheet.Range("D13")
    ' Message d'information
    MsgBox "Valeurs enregistrées", vbInformation, "TOUT EST OK ...."
  Else
    MsgBox "Impossible de trouver : " & VSearch & " sur la ligne 1 de 'Feuil2"
  End If
End Sub
A mettre dans un module, tout est dans le fichier joint.

Voilà 😉
 

Pièces jointes

- 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
21
Affichages
471
Réponses
14
Affichages
490
Retour