Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" a écrit dans le message de
news:
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ODFUDvwhEHA.2604@TK2MSFTNGP09.phx.gbl...
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" <michdenis@hotmail.com> wrote in message
news:OkchcnwhEHA.3264@tk2msftngp13.phx.gbl...
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Une dernière remarque : La fonction "Find" que j'ai utilisé dans ta
fonction personnalisée est valide seulement si tu as une
version Excel 2002 ou plus récente sinon, tu te dois de remplacer cette
fonction.... elle est inadéquate pour les versions
plus anciennes.
Salutations!
"michdenis" a écrit dans le message de
news:%
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Une dernière remarque : La fonction "Find" que j'ai utilisé dans ta
fonction personnalisée est valide seulement si tu as une
version Excel 2002 ou plus récente sinon, tu te dois de remplacer cette
fonction.... elle est inadéquate pour les versions
plus anciennes.
Salutations!
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:%23Un8SIxhEHA.1392@TK2MSFTNGP11.phx.gbl...
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ODFUDvwhEHA.2604@TK2MSFTNGP09.phx.gbl...
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" <michdenis@hotmail.com> wrote in message
news:OkchcnwhEHA.3264@tk2msftngp13.phx.gbl...
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Une dernière remarque : La fonction "Find" que j'ai utilisé dans ta
fonction personnalisée est valide seulement si tu as une
version Excel 2002 ou plus récente sinon, tu te dois de remplacer cette
fonction.... elle est inadéquate pour les versions
plus anciennes.
Salutations!
"michdenis" a écrit dans le message de
news:%
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ODFUDvwhEHA.2604@TK2MSFTNGP09.phx.gbl...
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" <michdenis@hotmail.com> wrote in message
news:OkchcnwhEHA.3264@tk2msftngp13.phx.gbl...
Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, je
n'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchés
par ta fonction.
Salutations!
"lo" <lo2301@yahoo.fr> a écrit dans le message de
news:ex6vtewhEHA.356@tk2msftngp13.phx.gbl...
Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour Lo,
Voici une ébauche,
Il y a juste un tout petit problème ...
Qu'est-ce que tu cherches ? La fonction doit te retourner quoi ? La date
, le chiffre , la valeur ?
Lorsque la fonction a trouvé la dernière ligne pour une valeur précise,
dans quelle colonne l'information de la fonction se
trouve-t-elle ?
'----------------------------------
Sub OuvrirFichier()
getLastRowNumberWithValue "C:excelstats.xls", 25, 10
End Sub
'----------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook, Ligne As Variant
Dim Cherche As Variant
Dim ColonneÀDéterminer ' à déterminer ???
On Error Resume Next
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
Ligne = .Columns(Col).Find(MaValeur, , xlFormulas, _
xlWhole, xlByColumns, xlPrevious).Row
If Err = 0 Then
cherche = .Cells(Ligne, ColonneÀDéterminer)
Else
Err = 0
cherche = "Non Disponble"
End If
End With
getLastRowNumberWithValue = cherche
End Function
'----------------------------------
Salutations!
"lo" a écrit dans le message de
news:
Re MichDenis,
J'ai fait un copier-coller du chemin d'acces au fichier (que j'ai reprise
dans mon code telle quelle) dans la barre d'adresse de l'explorateur
windows
et le bon fichier s'est ouvert correctement ...
Je ne sais pas si tu as lu jusqu'au bout la dernière réponse que je t'ai
envoyée mais tout en bas, il y avait une explication de ce que je
recherche
pour ma fonction ... Je copie-colle ci-dessous pour la facilité :
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments differents
et se rapportant a des objets differents les objets sont identifiés dans
une
colonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes pour
un
objet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
"michdenis" wrote in message
news:Bonsoir Lo,
Si ton fichier ne s'ouvre pas c'est tout simplement que tu as une faute
d'orthographe ou le chemin indiqué n'est pas le bon .
Pour ce qui est de la fonction, comme je n'ai pas compris ce que tu
voulais faire dans la deuxième section de la fonction, jen'y ai pas touché et je sais ... l'exécution s'arrête sur une erreur !
MAIS le fichier devrait quand même être ouvert !
Si tu as besoin de plus de précision, il faut que tu accompagnes ta
demande d'une explication quant aux objectifs recherchéspar ta fonction.
Salutations!
"lo" a écrit dans le message de
news:Salut michdenis,
Tout d'abord merci de passer du temps a m'aider. J'ai appliqué les
modifications que tu faites dans ma fonction mais ca ne passe toujours
pas
...
------------------------------------------------------------
Function getLastRowNumberWithValue(NomFichier As String, _
Col As Integer, MaValeur As Variant) As Integer
Dim Wk As Workbook
Debug.Print "avant"
Set Wk = Workbooks.Open(NomFichier)
With Wk.Worksheets("Données floraison")
' .Range(.....).....
End With
Debug.Print "apres"
'Je n'ai pas vraiment compris ce que tu voulais faire !
getLastRowNumberWithValue = -1
first = 5
i = Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", Cells(i, colonne)
If valeur = Cells(i, colonne) Then getLastRowNumberWithValue = i
i = i - 1
Loop
End Function
--------------------------------------------------------------
l'output de la fenetre d'execution :
--------------------------------------------------------------
avant
--------------------------------------------------------------
Ca bloque donc toujours pendant l'ouverture du workbook ou lors de la
selection de la worksheet ...
En fait ce que je veux faire :
j'ai un ensemble de successions de valeurs prises a des moments
differents
et se rapportant a des objets differents les objets sont identifiés dans
unecolonne par les chiffres 1, 2, ... 9 (en colonne 3) et chaque ligne
correspond a un ensemble de mesures sur cet objet prises a une
date-heure
donnée. Les dates les + recentes sont situées les + bas dans la feuille.
Donc je veux acceder a la ligne contenant les valeurs les + recentes
pour
unobjet donné.
Je donne donc comme argument le numero de l'objet et je vais rechercher
la
ligne la + basse dans la feuille donc la + recente pour cet objet
(l'argument MaValeur)
J'espère que c'est clair ;-)
Merci
Lo
Bonjour a tous ;-)
J'essaie vainement d'aller chercher des valeurs dans un fichier excel a
partir d'un autre fichier excel en vba mais je n'arrive pas a ouvrir
convenablement le workbook en question ... Je dois surement faire une erreur
quelque part mais je ne vois vraiment pas ou ... Ah oui, je suis nouveau en
vba donc veuillez etre indulgents ;-)
Voici mon code :
---------------------------------------------------------------------
Function getLastRowNumberWithValue(colonne, valeur) As Integer
Debug.Print "in Function 2"
wbk = "C:excelstats.xls"
Debug.Print "opening workbook : ", wbk
Set wb = Workbooks.Open(wbk)
Debug.Print "after workbook open"
Debug.Print "Workbook name : ", wb
Set donnees = wb.Worksheets("Données floraison")
Debug.Print "after donnees select"
getLastRowNumberWithValue = -1
first = 5
i = donnees.Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", donnees.Cells(i, colonne)
If valeur = donnees.Cells(i, colonne) Then getLastRowNumberWithValue
= i
i = i - 1
Loop
End Function
---------------------------------------------------------------------
Et voici l'output dans la fenetre d'execution :
---------------------------------------------------------------------
in Function 2
opening workbook : C:excelstats.xls
after workbook open
Workbook name :
---------------------------------------------------------------------
De plus lorsque j'installe un espion pour verifier la valeur de wb, je vois
la valeur "nothing". Il semblerait donc que le workbook ne soit pas chargé
correctement et que la fonction s'arrete juste après...
Qqun aurait-il des idées ?
Merci beaucoup
Lo
Bonjour a tous ;-)
J'essaie vainement d'aller chercher des valeurs dans un fichier excel a
partir d'un autre fichier excel en vba mais je n'arrive pas a ouvrir
convenablement le workbook en question ... Je dois surement faire une erreur
quelque part mais je ne vois vraiment pas ou ... Ah oui, je suis nouveau en
vba donc veuillez etre indulgents ;-)
Voici mon code :
---------------------------------------------------------------------
Function getLastRowNumberWithValue(colonne, valeur) As Integer
Debug.Print "in Function 2"
wbk = "C:excelstats.xls"
Debug.Print "opening workbook : ", wbk
Set wb = Workbooks.Open(wbk)
Debug.Print "after workbook open"
Debug.Print "Workbook name : ", wb
Set donnees = wb.Worksheets("Données floraison")
Debug.Print "after donnees select"
getLastRowNumberWithValue = -1
first = 5
i = donnees.Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", donnees.Cells(i, colonne)
If valeur = donnees.Cells(i, colonne) Then getLastRowNumberWithValue
= i
i = i - 1
Loop
End Function
---------------------------------------------------------------------
Et voici l'output dans la fenetre d'execution :
---------------------------------------------------------------------
in Function 2
opening workbook : C:excelstats.xls
after workbook open
Workbook name :
---------------------------------------------------------------------
De plus lorsque j'installe un espion pour verifier la valeur de wb, je vois
la valeur "nothing". Il semblerait donc que le workbook ne soit pas chargé
correctement et que la fonction s'arrete juste après...
Qqun aurait-il des idées ?
Merci beaucoup
Lo
Bonjour a tous ;-)
J'essaie vainement d'aller chercher des valeurs dans un fichier excel a
partir d'un autre fichier excel en vba mais je n'arrive pas a ouvrir
convenablement le workbook en question ... Je dois surement faire une erreur
quelque part mais je ne vois vraiment pas ou ... Ah oui, je suis nouveau en
vba donc veuillez etre indulgents ;-)
Voici mon code :
---------------------------------------------------------------------
Function getLastRowNumberWithValue(colonne, valeur) As Integer
Debug.Print "in Function 2"
wbk = "C:excelstats.xls"
Debug.Print "opening workbook : ", wbk
Set wb = Workbooks.Open(wbk)
Debug.Print "after workbook open"
Debug.Print "Workbook name : ", wb
Set donnees = wb.Worksheets("Données floraison")
Debug.Print "after donnees select"
getLastRowNumberWithValue = -1
first = 5
i = donnees.Cells(65535, colonne).End(xlUp).Row
Debug.Print "last row : ", i
Do While getLastRowNumberWithValue = -1 And i >= first
Debug.Print "i = ", i, " cell value = ", donnees.Cells(i, colonne)
If valeur = donnees.Cells(i, colonne) Then getLastRowNumberWithValue
= i
i = i - 1
Loop
End Function
---------------------------------------------------------------------
Et voici l'output dans la fenetre d'execution :
---------------------------------------------------------------------
in Function 2
opening workbook : C:excelstats.xls
after workbook open
Workbook name :
---------------------------------------------------------------------
De plus lorsque j'installe un espion pour verifier la valeur de wb, je vois
la valeur "nothing". Il semblerait donc que le workbook ne soit pas chargé
correctement et que la fonction s'arrete juste après...
Qqun aurait-il des idées ?
Merci beaucoup
Lo