recherche d'une donnée sans bouton

micky

XLDnaute Nouveau
bonjour a tous,
j'ai un petit soucis, je vous explique:
j'ai une liste déroulante de Nom dans la cellule B2 de la feuille "menu".
Pour chaque Nom, une feuille du classeur existe ayant le même Nom.
je voudrais qu' a chaque fois que je sélectionne un nom différent,
Excel se rend dans la feuille correspondante au Nom et copie la dernière case de la colonne D et me l'a colle dans la cellule E4 de ma feuille "menu".
pouvez vous m'aider avec un code vba pour ca?

encore merci
 

micky

XLDnaute Nouveau
Re : recherche d'une donnée sans bouton

bonsoir,
désolé de vous embêté encore et encore...
j'ai fait du chemin, mais je rencontre encore un soucis.
j'ai créer une macro qui me permet de créer un nouveau client et sa feuille client.
seulement la macro va toujours créer un fichier client du meme nom.
voici le code de la macro :
Sub creationclient()
'
' creationclient Macro
'

'
Sheets("Listeclients").Select
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Creationclient").Select
Range("E8").Select
Selection.Copy
Sheets("Listeclients").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E10").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("C1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E11").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("D1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E12").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("E1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "CLIENT SPECIMEN"
Range("A1").Select
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "CLIENT SPECIMEN"
Range("A1").Select
Sheets("SpecimenficheClient").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CLIENT SPECIMEN").Select
Cells.Select
ActiveSheet.Paste
Range("A2").Select
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("Creationclient").Select
Range("E13").Select
Application.CutCopyMode = False
Selection.Copy
ActiveWindow.ScrollWorkbookTabs Position:=xlLast
Sheets("CLIENT SPECIMEN").Select
Range("G1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("C10").Select
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("Creationclient").Select
Range("E8:E13").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("E8").Select
ActiveWorkbook.Save
End Sub

j'ai mis en rouge ou je pense que ca coince. ici le client a pour nom CLIENT SPECIMEN...
pouvez vous me donner une solution pour généraliser le nom en fonction de n'importe quel client de créé ?

merci
 

micky

XLDnaute Nouveau
Re : recherche d'une donnée sans bouton

apres 7h de recherche et une migraine, j'en suis la et ca fonctionne!
j'adapte les codes... :)

Public Function FeuilleExiste(Feuille As String) As Worksheet
On Error Resume Next
Set FeuilleExiste = Worksheets(Feuille)
End Function

Sub creationficheclient()
'
' creationficheclient Macro
'
Sheets("fin").Select
Sheets.Add
ActiveSheet.Name = Sheets("Creationclient").Range("E8").Text
Range("A1").Select
Sheets("Creationclient").Select
Range("E8").Select
DoEvents
' ...
End Sub
'

Sub recherchefeuille()
Dim Onglet As String

'si la cellule de saisie est en A1
Onglet = CStr(Range("E8"))
If FeuilleExiste(Onglet) Is Nothing Then
'ne rien faire
Else
'activer la feuille
Sheets(Onglet).Activate
End If
DoEvents
' ...

End Sub
'

Sub creationclient()
'
' creationclient Macro
'

'
Call creationficheclient
Sheets("Listeclients").Select
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Creationclient").Select
Range("E8").Select
Selection.Copy
Sheets("Listeclients").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E10").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("C1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E11").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("D1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E12").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("E1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Listeclients").Select
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Creationclient").Select
Range("E13").Select
Application.CutCopyMode = False
Selection.Copy
Call recherchefeuille
Range("G1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("Creationclient").Select
Range("E8:E13").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A1").Select
ActiveWorkbook.Save
DoEvents
' ...
End Sub
'

désolé je sais pas mettre le code dans une fenêtre appropriée...
merci a vous!
 

micky

XLDnaute Nouveau
Re : recherche d'une donnée sans bouton

bonjour a vous,
je viens vers vous parce que j'ai un petit soucis au niveau de la facturation.
j'ai un bouton (valider facture) me permettant d'enregistrer la facture dans la fiche client et d'autre part un bouton (histo) me permettant d'enregistrer la facture dans une fiche historiquefacture.
mais je n'arrive pas a fusionner les deux codes...
j'ai chercher, retourner les codes (avec l'aide de Google), mais en vain...
pouvez m'aider svp ?
nouvelle discussion créer ici:
https://www.excel-downloads.com/threads/fusion-de-de-2-codes-vb-et-dune-macro.214594/
 

Pièces jointes

  • gestionclient.xlsm
    93.5 KB · Affichages: 15
  • gestionclient.xlsm
    93.5 KB · Affichages: 15
  • gestionclient.xlsm
    93.5 KB · Affichages: 18
Dernière édition:

Discussions similaires

  • Question
Microsoft 365 excel 365
Réponses
3
Affichages
234
Réponses
4
Affichages
147

Statistiques des forums

Discussions
312 685
Messages
2 090 940
Membres
104 703
dernier inscrit
romla937