Ziouda
XLDnaute Nouveau
EDIT:
Il semble que le problème vient du fait que j'appel ma fonction de la sheet 1 et que les données sont dans la sheet 2
Quand j'appel ma fonction dans la sheet 2, ça fonctionne.
Du coup comment régler le soucis ?
Je pense que le pb vient de cette partie de la fonction :
	
	
	
	
	
		
Need help 🙂
Bonjour tout le monde,
Je sèche sur une fonction que j'ai crée avec deux variables "string et date"
Quand j'appel cette fonction via un call j'ai aucun soucis:
	
	
	
	
	
		
Cependant si j'appel la fonctionne depuis excel, j'ai un #VALEUR!
Exemple :
=VariationTime("ID001";"00:15:00")
Voici la fonction
	
	
	
	
	
		
Nom du module : Mes_Fonctions
Nom de la fonction : VariationTime
Extention fichier : xlsm
Macros activées : Oui
D'autres macros fonctionnent : Oui
	
		
			
		
		
	
				
			Il semble que le problème vient du fait que j'appel ma fonction de la sheet 1 et que les données sont dans la sheet 2
Quand j'appel ma fonction dans la sheet 2, ça fonctionne.
Du coup comment régler le soucis ?
Je pense que le pb vient de cette partie de la fonction :
		Code:
	
	
	    tableau = Sheets("DATA").Range(Cells(i, col), Cells(i + nbligne - 1, col))
	Need help 🙂
Bonjour tout le monde,
Je sèche sur une fonction que j'ai crée avec deux variables "string et date"
Quand j'appel cette fonction via un call j'ai aucun soucis:
		Code:
	
	
	Sub test()
    Dim z As Double
  
    z = VariationTime("ID001", "00:30:00")
End Sub
	Cependant si j'appel la fonctionne depuis excel, j'ai un #VALEUR!
Exemple :
=VariationTime("ID001";"00:15:00")
Voici la fonction
		VB:
	
	
	Public Function VariationTime(ID As String, timevar As Date) As Double
    Dim nbligne As Integer, i As Integer, l As Integer, col As Integer
    Dim Timeloop As Date
    Dim tableau As Variant
    Dim c As Range
    Dim First As Double, Last As Double, diff As Double
    Set c = Sheets("DATA").Rows(1).Find(ID, LookIn:=xlValues, LookAt:=xlWhole)
    col = c.Column
    Timeloop = "00:05:00"
    nbligne = timevar / Timeloop
    i = 3
    tableau = Sheets("DATA").Range(Cells(i, col), Cells(i + nbligne - 1, col))
    First = tableau(1, 1)
    Last = tableau(nbligne, 1)
    VariationTime = First - Last
End Function
	Nom du module : Mes_Fonctions
Nom de la fonction : VariationTime
Extention fichier : xlsm
Macros activées : Oui
D'autres macros fonctionnent : Oui
			
				Dernière édition: