RECHERCHE AUTOMATIQUE D'UNE FEUILLE A UNE AUTRE | ||
---|---|---|
Inscription: 09/12/2015
De Paris
Messages:
6
Système d'exploitation: PC Version Excel utilisée: 2013 |
Posté le : 11-01-2016 00h05
Bonjour, J'ai un petit soucis avec un classeur contenant 8 feuilles dont la feuille principal CLIENT dans laquelle un tableau a remplir: J'aimerais que si le nom du bateau entrez par l'utilisateur correspond au nom d'une autre feuille de mon classeur, alors l'autre feuille prends uniquement les lignes dont le nom de bateaux correspond. Exple: Feuille GOLDEN; 'COPIE AUTOMATIQUEMENT LES LIGNES QUI CORRESPONDENT EN ATTENTE D'UNE REPONSE JE VOUS REMERCIE DEJA ENORMEMENT JUSTE POUR LA PEINE D'AVOIR LU MA DEMANDE... CI-JOINT LE FICHIER QUE J'AI REALISE |
|
|
Re: RECHERCHE AUTOMATIQUE D'UNE FEUILLE A UNE AUTRE | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 11-01-2016 19h52
Bonsoir naka1oneshot, le Forum,
Je te propose le code VBA suivant, actionné par un bouton dans la feuille "CLIENT" :
DANS UN MODULE DE CODE STANDARD (Ex : Module1) Option Explicit '--------------------------------------------------------------------- ' Auteur : Didier FOURGEOT (myDearFriend!) ' Site : www.mdf-xlpages.com ' Date : Janvier 2016 '--------------------------------------------------------------------- Sub Repartition() Dim TabTemp As Variant Dim FCible As Worksheet Dim NomBateau$ Dim L As Long, LignCible As Long Dim C As Integer 'Mémorise le tableau de données "CLIENT" dans une variable TabTemp With Sheets("CLIENT") 'N° dernière ligne du tableau ? L = DernLign(Sheets("CLIENT"), 1) 'Le tableau commence à la ligne 9 et se termine en colonne 9 TabTemp = .Range(.Cells(9, 1), .Cells(L, 9)).Value End With 'Pour chaque ligne du tableau For L = 1 To UBound(TabTemp, 1) NomBateau = TabTemp(L, 7) On Error Resume Next Set FCible = Sheets(NomBateau) On Error GoTo 0 'La feuille existe ? If Not FCible Is Nothing Then 'Les données commencent ligne 16, colonnes 8 à 15 With FCible 'Première ligne disponible dans la feuille Cible LignCible = DernLign(FCible, 8) + 1 'On recopie toutes les colonnes sauf la 7e For C = 1 To 9 Select Case C Case 1 To 6 .Cells(LignCible, C + 7).Value = TabTemp(L, C) Case 8 To 9 .Cells(LignCible, C + 6).Value = TabTemp(L, C) End Select Next C End With Set FCible = Nothing End If Next L MsgBox "Répartition réalisée. OK !" End Sub Private Function DernLign(F As Worksheet, colDepart As Integer) As Long With F DernLign = .Cells(.Rows.Count, colDepart).End(xlUp).Row End With End Function En pièce jointe, ton fichier adapté en conséquence.
En espérant t'avoir dépanné...
Bien cordialement, Didier_mDF
Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
|
Re: RECHERCHE AUTOMATIQUE D'UNE FEUILLE A UNE AUTRE | ||
---|---|---|
Inscription: 09/12/2015
De Paris
Messages:
6
Système d'exploitation: PC Version Excel utilisée: 2013 |
Posté le : 13-01-2016 00h04
MERCI MERCI MERCI MILLES MERCI A TOI C'EST EXACTEMENT CE DONC J'AVAIS BESOIN JE POURRAIS MODIFIER MAINTENANT A PARTIR DE TON CODE ENCORE MERCI |
|
|