Commande excel avec recherchev

Francis -  
Zebulon97 Messages postés 52 Statut Membre -
Bonjour,

Ma commande : =SI(C14="";"";RECHERCHEV(C14;'Base de donnée'!$A$1:$C$645;3;FAUX)+366) marche très bien, mais le problème est que ma feuille 'Base de donnée' ce met à jour continuellement alors quand ma cellule faite le recherchev je voudrais que la formule disparaisse et que ce soit le résultat qui reste.

9 réponses

  1. eljojo_e Messages postés 1255 Statut Membre 155
     
    Bonjour,

    Si tu veux que ta valeur reste la meme enleve la formule et tape la valeur directement
    0
  2. Fmoore Messages postés 12 Statut Membre
     
    Le but est justement de pas avoir a tappé le nom a chaque fois
    0
  3. Zebulon97 Messages postés 52 Statut Membre
     
    Bonjour,
    Utilise une cellule cachée (dans une ligne ou colonne au choix ou une cellule écrite en blanc) qui contiendra ta formule et affichera le résultat et utilise une macro réalisée à l'aide de l'assistant pour copier ce résultat et coller sa valeur dans la bonne cellule.
    Affecte un bouton à cette macro afin de l'utiliser quand il le faut.
    Bon courage.
    0
  4. Fmoore Messages postés 12 Statut Membre
     
    Pour la première partie parfait il a pas de problème mais pour ce qui est de la macro comment je fait ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Zebulon97 Messages postés 52 Statut Membre
     
    Utilise l'assistant enregistrer une macro
    Excel 2007 onglet Développeur, Code, Enregistrer une macro
    Excel 2003 Outils, Macro, Nouvelle macro

    exécute les manipulations pour copier le résultat de ta formule dans la cellule cachée que tu a crée et colle en collage spécial, valeur à l'emplacement voulu pour n'avoir que le résultat de ta formule.

    ensuite arrête l'enregistrement de la macro.

    affecte lui un bouton et utilise le à ton bon vouloir.
    0
  7. Fmoore Messages postés 12 Statut Membre
     
    Ah ok tu parles de cette façon, mais le but est de le faire en VBA pour que n'importe quel usager qui utilise le fichier ça s'inscrive seul.
    0
  8. Zebulon97 Messages postés 52 Statut Membre
     
    Un clic droit sur l'onglet de la feuille, visualiser le code et tu trouveras un module qui contient le code VBA de la macro que tu viens d'enregistrer. A toi de l'utiliser.
    0
  9. Fmoore Messages postés 12 Statut Membre
     
    En regardant plusieurs post sa devrait donner quelque chose comme :

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    For W = 1 To Worksheets("Suivisignature2012").Range("annee").Rows.Count
    If Worksheets("Suivisignature2012").Cells(W, 2).Value = "" Then
    If Worksheets("Suivisignature2012").Cells(W, 1).Value = "*" Then
    Worksheets("Suivisignature2012").Cells(W, 2).Value = Cells(sel.Row, "C")
    End If
    End If
    Next W
    End Sub
    mais malheureusement sa ne marche pas
    0
  10. Zebulon97 Messages postés 52 Statut Membre
     
    Plutôt cela :

    Sub Macro1()
    '
    ' Macro1 Macro
    '

    'se positionner sur la cellule à copier (celle qui contient le résultat de ta formule =SI(C14="";"";RECHERCHEV(C14;'Base de donnée'!$A$1:$C$645;3;FAUX)+366)
    Range("A1").Select
    'copier le contenu de cette cellule - clic droit, copier -
    Selection.Copy
    'se positionner à l'endroit où l'on veut coller le résultat
    Range("F13").Select
    'coller la valeur qui était affichée dans la cellule contenant la formule de calcul - clic droit, collage spécial, valeur -
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    End Sub
    0