RechercheV dans VBA
Mathilde33
-
ed -
ed -
Bonjour,
Je souhaiterai inclure une rechercheV dans le VBA en tant que réponse, mais je n'y arrive pas, et je n'ai pas trouvé de moyen pour contourner le problème.
Je cherche à faire apparaitre une productivité en fonction de la date saisie. Savant que chaque mois correspond à un fichier différent.
Par exemple:
Function R(mois)
If mois= "01/01/2011" or "02/01/2011" or ... or "31/01/2011" then
R= Recherchev(mois;'Prod'!B1:Z100;10;faux)
end If
End Funtion
J'ai essayé de mettre des guillemets de toutes les façon possible mais rien ne marche.
Aidez moi c'est très urgent!!
Merci d'avance
Je souhaiterai inclure une rechercheV dans le VBA en tant que réponse, mais je n'y arrive pas, et je n'ai pas trouvé de moyen pour contourner le problème.
Je cherche à faire apparaitre une productivité en fonction de la date saisie. Savant que chaque mois correspond à un fichier différent.
Par exemple:
Function R(mois)
If mois= "01/01/2011" or "02/01/2011" or ... or "31/01/2011" then
R= Recherchev(mois;'Prod'!B1:Z100;10;faux)
end If
End Funtion
J'ai essayé de mettre des guillemets de toutes les façon possible mais rien ne marche.
Aidez moi c'est très urgent!!
Merci d'avance
A voir également:
- RechercheV dans VBA
- Excel compter cellule couleur sans vba - Guide
- Recherchev ne renvoie pas la bonne valeur ✓ - Forum Excel
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Find vba - Astuces et Solutions
- Dépassement de capacité vba ✓ - Forum Excel
5 réponses
salut,
j'ai regardé ton problème et un peu avancé mais je bute également sur un problème : avec ce code ça fonctionne jusqu'à 'prod = ...' (pour info il fallait remplacer le terme français par le terme anglais "VLookup" et préciser qu'on utilise une fonction de feuille de calcul >> "WorksheetFunction").
Function prod(mois_saisi As Date) As Single
'j'ai mis 01/01/2011 dans C1
mois_saisi = Sheets(1).Range("C1").Value
'il faut déclarer en tant que date les valeurs à rechercher pour que ça marche
Dim date_test As Date
date_test = "01/01/2011"
If mois_saisi = date_test Then
'plantage ligne ci-dessous :
prod = WorksheetFunction.VLookup(mois_saisi, "A1:B5", 2, False)
End If
End Function
si quelqu'un a une idée...
j'ai regardé ton problème et un peu avancé mais je bute également sur un problème : avec ce code ça fonctionne jusqu'à 'prod = ...' (pour info il fallait remplacer le terme français par le terme anglais "VLookup" et préciser qu'on utilise une fonction de feuille de calcul >> "WorksheetFunction").
Function prod(mois_saisi As Date) As Single
'j'ai mis 01/01/2011 dans C1
mois_saisi = Sheets(1).Range("C1").Value
'il faut déclarer en tant que date les valeurs à rechercher pour que ça marche
Dim date_test As Date
date_test = "01/01/2011"
If mois_saisi = date_test Then
'plantage ligne ci-dessous :
prod = WorksheetFunction.VLookup(mois_saisi, "A1:B5", 2, False)
End If
End Function
si quelqu'un a une idée...
bonjour
je vois dans ton code:
If mois= "01/01/2011" or "02/01/2011" or ... or "31/01/2011" then
R= Recherchev(mois;'Prod'!B1:Z100;10;faux)
mois serait le nom d'une cellule et le nom de la zone RechercheV ?
et pourquoi énumérer tous les jours du mois au lieu de prendre val(mid(mois,3,2)) en 1 seule fois ?
je vois dans ton code:
If mois= "01/01/2011" or "02/01/2011" or ... or "31/01/2011" then
R= Recherchev(mois;'Prod'!B1:Z100;10;faux)
mois serait le nom d'une cellule et le nom de la zone RechercheV ?
et pourquoi énumérer tous les jours du mois au lieu de prendre val(mid(mois,3,2)) en 1 seule fois ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
c'est très urgent
Tellement pressée qu'il est difficile de te répondre car tu es imprécise:
Par exemple: "mois" est il dans ton tableau sous de nombre (1 pour janvier) ou sous forme littérale (janvier non sous format personnalisé)
proverbe chinois: "si tu es pressé(e), commence par t'asseoir"
c'est très urgent
Tellement pressée qu'il est difficile de te répondre car tu es imprécise:
Par exemple: "mois" est il dans ton tableau sous de nombre (1 pour janvier) ou sous forme littérale (janvier non sous format personnalisé)
proverbe chinois: "si tu es pressé(e), commence par t'asseoir"