OVH Cloud OVH Cloud

débutant : fichiers en cours et recherche

4 réponses
Avatar
pierre66
2 questions pour amuser les pros
(j'ai l'impression qu'il y en a dans ce forum !)

comment définir des noms fixes pour des fichiers de noms variables,
je m'explique : ma macro va manipuler 2 fichiers
- budgetXYZ (nom variable, contenant la macro, donc je m'en sors en
utilisant "thisWorbook")
- suiviXXXXX (nom selon le commercial, défini dans le fichier précédent, par
ex : suivi_agnes)

je souhaite baptiser au moins ce derenier fichier le temps de la macro, pour
ne pas avoir à créer des macros différentes selon les commerciaux
évidemment, le fichier doit conserver son nom d'origine pour l'enregistrement

si solution plus élégante que mon idée, je suis preneur !

---------------------
question subsidiaire (élémentaire, je suppose...)
comment dire que je recherche la valeur d'une cellule du classeur X dans le
classeur Y

par ex
au lieu de Selection.Find(What:="24/06/2005 08:47:05" ...
je voudrais dire
Selection.Find(What:="ThisWorkBook.feuille.valeurcellule" ...
ne rigolez pas, c'est l'idée, je compte sur vous pour la formule !

à propos si qqu'un connait un livre sur VBA lisible pour débuter
j'ai un énorme pavé bien "conceptuel", avec peu d'exemples concrets

merci par avance pour tout
et bravo pour l'esprit d'entraide qui règne sur ce forum !

pierre,
perpignan

4 réponses

Avatar
Daniel
Bonjour.
Pour une recherche sur un autre fichier :
Var = Workbooks("Test.xls").Sheets(1).Range("A1:Z10").Find(What:="toto")
Pour ta première question, une fois ton classeur ouvert :
NomClasseur = Activeworkbook.name
Cordialement.
Daniel
"pierre66" a écrit dans le message de
news:
2 questions pour amuser les pros
(j'ai l'impression qu'il y en a dans ce forum !)

comment définir des noms fixes pour des fichiers de noms variables,
je m'explique : ma macro va manipuler 2 fichiers
- budgetXYZ (nom variable, contenant la macro, donc je m'en sors en
utilisant "thisWorbook")
- suiviXXXXX (nom selon le commercial, défini dans le fichier précédent,
par
ex : suivi_agnes)

je souhaite baptiser au moins ce derenier fichier le temps de la macro,
pour
ne pas avoir à créer des macros différentes selon les commerciaux
évidemment, le fichier doit conserver son nom d'origine pour
l'enregistrement

si solution plus élégante que mon idée, je suis preneur !

---------------------
question subsidiaire (élémentaire, je suppose...)
comment dire que je recherche la valeur d'une cellule du classeur X dans
le
classeur Y

par ex
au lieu de Selection.Find(What:="24/06/2005 08:47:05" ...
je voudrais dire
Selection.Find(What:="ThisWorkBook.feuille.valeurcellule" ...
ne rigolez pas, c'est l'idée, je compte sur vous pour la formule !

à propos si qqu'un connait un livre sur VBA lisible pour débuter
j'ai un énorme pavé bien "conceptuel", avec peu d'exemples concrets

merci par avance pour tout
et bravo pour l'esprit d'entraide qui règne sur ce forum !

pierre,
perpignan


Avatar
pierre66
merci daniel

mais c'est "toto" qui me donne du souci ...
toto : c'est chez moi le jour et l'heure de création du fichier XXX
ça ressemble à 24/06/2005 15:02:25 (valeur figée)
(info importante pour moi, et qui me permettra des tris, recherches, ...)

je veux rechercher dans le fichier XYZ si cet enreg existe déjà dans une liste

je tente des formules du genre
Selection.Find(What:=ThisWorkbook.feuille.Date
Date étant le nom de la cellule contenant la date

et je me vautre à chaque fois ...
;-/

pierre



Bonjour.
Pour une recherche sur un autre fichier :
Var = Workbooks("Test.xls").Sheets(1).Range("A1:Z10").Find(What:="toto")
Pour ta première question, une fois ton classeur ouvert :
NomClasseur = Activeworkbook.name
Cordialement.
Daniel
"pierre66" a écrit dans le message de
news:
2 questions pour amuser les pros
(j'ai l'impression qu'il y en a dans ce forum !)

comment définir des noms fixes pour des fichiers de noms variables,
je m'explique : ma macro va manipuler 2 fichiers
- budgetXYZ (nom variable, contenant la macro, donc je m'en sors en
utilisant "thisWorbook")
- suiviXXXXX (nom selon le commercial, défini dans le fichier précédent,
par
ex : suivi_agnes)

je souhaite baptiser au moins ce derenier fichier le temps de la macro,
pour
ne pas avoir à créer des macros différentes selon les commerciaux
évidemment, le fichier doit conserver son nom d'origine pour
l'enregistrement

si solution plus élégante que mon idée, je suis preneur !

---------------------
question subsidiaire (élémentaire, je suppose...)
comment dire que je recherche la valeur d'une cellule du classeur X dans
le
classeur Y

par ex
au lieu de Selection.Find(What:="24/06/2005 08:47:05" ...
je voudrais dire
Selection.Find(What:="ThisWorkBook.feuille.valeurcellule" ...
ne rigolez pas, c'est l'idée, je compte sur vous pour la formule !

à propos si qqu'un connait un livre sur VBA lisible pour débuter
j'ai un énorme pavé bien "conceptuel", avec peu d'exemples concrets

merci par avance pour tout
et bravo pour l'esprit d'entraide qui règne sur ce forum !

pierre,
perpignan







Avatar
Daniel
C'est apparemment mission impossible !
dans la feuille active, on peut coder :
Application.FindFormat.NumberFormat = "dd/mm/yyyy hh:mm:ss"
Var = Selection.Find(What:="24/06/2005 15:02:25", After:¬tiveCell,
LookIn:= _
xlValues, LookAt:=xlPart, SearchOrder:=xlByRows,
SearchDirection:=xlNext _
, MatchCase:úlse, SearchFormat:=True)
mais je n'ai pas réussi à le faire fonctionner sur une autre feuille. Avis
aux pros.
Cordialement.
Daniel
"pierre66" a écrit dans le message de
news:
merci daniel

mais c'est "toto" qui me donne du souci ...
toto : c'est chez moi le jour et l'heure de création du fichier XXX
ça ressemble à 24/06/2005 15:02:25 (valeur figée)
(info importante pour moi, et qui me permettra des tris, recherches, ...)

je veux rechercher dans le fichier XYZ si cet enreg existe déjà dans une
liste

je tente des formules du genre
Selection.Find(What:=ThisWorkbook.feuille.Date
Date étant le nom de la cellule contenant la date

et je me vautre à chaque fois ...
;-/

pierre



Bonjour.
Pour une recherche sur un autre fichier :
Var =
Workbooks("Test.xls").Sheets(1).Range("A1:Z10").Find(What:="toto")
Pour ta première question, une fois ton classeur ouvert :
NomClasseur = Activeworkbook.name
Cordialement.
Daniel
"pierre66" a écrit dans le message
de
news:
2 questions pour amuser les pros
(j'ai l'impression qu'il y en a dans ce forum !)

comment définir des noms fixes pour des fichiers de noms variables,
je m'explique : ma macro va manipuler 2 fichiers
- budgetXYZ (nom variable, contenant la macro, donc je m'en sors en
utilisant "thisWorbook")
- suiviXXXXX (nom selon le commercial, défini dans le fichier
précédent,
par
ex : suivi_agnes)

je souhaite baptiser au moins ce derenier fichier le temps de la macro,
pour
ne pas avoir à créer des macros différentes selon les commerciaux
évidemment, le fichier doit conserver son nom d'origine pour
l'enregistrement

si solution plus élégante que mon idée, je suis preneur !

---------------------
question subsidiaire (élémentaire, je suppose...)
comment dire que je recherche la valeur d'une cellule du classeur X
dans
le
classeur Y

par ex
au lieu de Selection.Find(What:="24/06/2005 08:47:05" ...
je voudrais dire
Selection.Find(What:="ThisWorkBook.feuille.valeurcellule" ...
ne rigolez pas, c'est l'idée, je compte sur vous pour la formule !

à propos si qqu'un connait un livre sur VBA lisible pour débuter
j'ai un énorme pavé bien "conceptuel", avec peu d'exemples concrets

merci par avance pour tout
et bravo pour l'esprit d'entraide qui règne sur ce forum !

pierre,
perpignan









Avatar
Daniel
Erratum.
Tout ça pour une colonne pas assez large :

Dim c As Range
Application.FindFormat.NumberFormat = "dd/mm/yyyy hh:mm:ss"
Set c = Workbooks("Test.xls").Sheets(1).Range("A1:Z10").Find("24/06/2005
15:02:25", _
LookIn:=xlValues, SearchFormat:=True)
If Not c Is Nothing Then
MsgBox "Trouvé en " & c.Address
End If

Cordialement.
Daniel
"Daniel" a écrit dans le message de news:

C'est apparemment mission impossible !
dans la feuille active, on peut coder :
Application.FindFormat.NumberFormat = "dd/mm/yyyy hh:mm:ss"
Var = Selection.Find(What:="24/06/2005 15:02:25", After:¬tiveCell,
LookIn:= _
xlValues, LookAt:=xlPart, SearchOrder:=xlByRows,
SearchDirection:=xlNext _
, MatchCase:úlse, SearchFormat:=True)
mais je n'ai pas réussi à le faire fonctionner sur une autre feuille. Avis
aux pros.
Cordialement.
Daniel
"pierre66" a écrit dans le message de
news:
merci daniel

mais c'est "toto" qui me donne du souci ...
toto : c'est chez moi le jour et l'heure de création du fichier XXX
ça ressemble à 24/06/2005 15:02:25 (valeur figée)
(info importante pour moi, et qui me permettra des tris, recherches, ...)

je veux rechercher dans le fichier XYZ si cet enreg existe déjà dans une
liste

je tente des formules du genre
Selection.Find(What:=ThisWorkbook.feuille.Date
Date étant le nom de la cellule contenant la date

et je me vautre à chaque fois ...
;-/

pierre



Bonjour.
Pour une recherche sur un autre fichier :
Var =
Workbooks("Test.xls").Sheets(1).Range("A1:Z10").Find(What:="toto")
Pour ta première question, une fois ton classeur ouvert :
NomClasseur = Activeworkbook.name
Cordialement.
Daniel
"pierre66" a écrit dans le message
de
news:
2 questions pour amuser les pros
(j'ai l'impression qu'il y en a dans ce forum !)

comment définir des noms fixes pour des fichiers de noms variables,
je m'explique : ma macro va manipuler 2 fichiers
- budgetXYZ (nom variable, contenant la macro, donc je m'en sors en
utilisant "thisWorbook")
- suiviXXXXX (nom selon le commercial, défini dans le fichier
précédent,
par
ex : suivi_agnes)

je souhaite baptiser au moins ce derenier fichier le temps de la
macro,
pour
ne pas avoir à créer des macros différentes selon les commerciaux
évidemment, le fichier doit conserver son nom d'origine pour
l'enregistrement

si solution plus élégante que mon idée, je suis preneur !

---------------------
question subsidiaire (élémentaire, je suppose...)
comment dire que je recherche la valeur d'une cellule du classeur X
dans
le
classeur Y

par ex
au lieu de Selection.Find(What:="24/06/2005 08:47:05" ...
je voudrais dire
Selection.Find(What:="ThisWorkBook.feuille.valeurcellule" ...
ne rigolez pas, c'est l'idée, je compte sur vous pour la formule !

à propos si qqu'un connait un livre sur VBA lisible pour débuter
j'ai un énorme pavé bien "conceptuel", avec peu d'exemples concrets

merci par avance pour tout
et bravo pour l'esprit d'entraide qui règne sur ce forum !

pierre,
perpignan