fonction qui renvoie un tableau de données

fonction qui renvoie un tableau de données - VB/VBA/VBS - Programmation

Marsh Posté le 24-04-2005 à 00:44:50    

Bonjour,
 
Je me permets de déposer un message sur le forum car cela fait trois jours que je cherche à:
 
1- créer une fonction qui me permettrait de renvoyer un tableau de valeurs
2- Créer une procédure qui va m'afficher toute ces valeurs dans une nouvelle feuille excel
 
et ca ne marche pas :(
 
voici la fonction qui doit renvoyer Ttab (mais je ne sais pas ce qu'il renvoit réellemet)
 
Function Get_champs(Data_Sheet_Name As String, Variable_Name1 As String, Variable_Name2 As String, Variable_Name3 As String) As Double
 
' Définition des variables
Dim Variable_Index1, Variable_Index2, Variable_Index3 As Integer
Dim Alt_gdt, lat_gdt, long_gdt As Double
Dim x_av, y_av, z_av As Double
Dim x_gdt, y_gdt, z_gdt As Double
Dim Feuille As String
Dim Object As Double
 
Dim dist_av_gdt As Double
Dim GDT, I As Integer
Dim Msg_OK As String
Dim Ttab(1 To 70000) As Object
 
' détermination de l'indice de colonne des Variable_Name
Variable_Index1 = Get_indice(Variable_Name1, i_ligne_var)
Variable_Index2 = Get_indice(Variable_Name2, i_ligne_var)
Variable_Index3 = Get_indice(Variable_Name3, i_ligne_var)
 
'For i = 1 To i = i_fin_vol
    Set Ttab(I) = Sheets(Feuille).Range(Cells(I, 1), Cells(70000, 1))
'Next i
 
'Initialisation des variables
GDT = 0
dist_av_gdt = 0
 
 
If (GDT = 0) Then 'mourmelon
    lat_gdt = 49.06301
    long_gdt = 4.22196
    Alt_gdt = 127
End If
 
'If (GDT = 1) Then ' st brice
'lat_dgt=
'long_gdt=
'alt_gdt=
'End If
 
If (i_debut_vol < i_fin_vol) Then
 
    For I = i_debut_vol To i_fin_vol
     
    'calculer la position de l'avion dans le référentiel cartésien
     
    x_av = (Cells(I, Variable_Index1).Value + Rayon_terre) * Cos(Cells(I, Variable_Index2).Value * pi / 180) * Cos(Cells(I, Variable_Index3).Value * pi / 180)
    y_av = (Cells(I, Variable_Index1).Value + Rayon_terre) * Cos(Cells(I, Variable_Index2).Value * pi / 180) * Sin(Cells(I, Variable_Index3).Value * pi / 180)
    z_av = (Cells(I, Variable_Index1).Value + Rayon_terre) * Sin(Cells(I, Variable_Index2).Value * pi / 180)
     
    'calculer la position du GDT dans le référentiel cartésien
     
    x_gdt = (Alt_gdt + Rayon_terre) * Cos(lat_gdt * pi / 180) * Cos(long_gdt * pi / 180)
    y_gdt = (Alt_gdt + Rayon_terre) * Cos(lat_gdt * pi / 180) * Sin(long_gdt * pi / 180)
    z_gdt = (Alt_gdt + Rayon_terre) * Sin(lat_gdt * pi / 180)
     
    'calculer la distance relative entre l'avion et le GDT
     
    dist_av_gdt = Sqr((x_av - x_gdt) ^ 2 + (y_av - y_gdt) ^ 2 + (z_av - z_gdt) ^ 2)
     
    'calculer le champs reçu à partir de la formule de la spec
     
    Ttab(I) = 20 * Log(0.9 / (4 * pi * dist_av_gdt)) + 41
     
    Next I
     
    Get_champs = Ttab
     
End If
End Function

 
et je ne sais pas comment faire pour afficher le contenu du tableau Ttab dans une nouvelle feuille excel...
 
Quelqu'un pourrait-il m'aider?
 
Merci d'avance

Reply

Marsh Posté le 24-04-2005 à 00:44:50   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed