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.
A voir également:

9 réponses

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
Fmoore Messages postés 12 Statut Membre
 
Le but est justement de pas avoir a tappé le nom a chaque fois
0
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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
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
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
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
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
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