Importation d'un fichier dans un module et lecture de ce même fichier dans un au

houston87 Messages postés 26 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 28 septembre 2011 - 17 févr. 2010 à 23:35
 Profil bloqué - 18 févr. 2010 à 17:16
Bonsoir,

j'ai un petit souci sur un code je suis entrain de faire un petite application sur vba et le problème c'est j'ai créer des boutons avec lesquels je lance des modules

Le premier bouton me permet d'ouvrir une fenêtre afin d'importer un fichier
et le deuxième bouton me permet de lancer l'analyse et c'est ou je bloque puisque la l'analyse de ce fichier doit se faire à partir de l'import qu'on effectue avec le premier bouton voici le code du premier module pour l'import :

Public Sub file()

chemin = Application.GetOpenFilename

If UCase(Right(chemin, 3)) <> "WAV" Then
MsgBox "Ce n'est pas un Fichier .Wav ", vbCritical + 4096, "Attention!"
Exit Sub
End If

End Sub



Puis le deuxième module qui me permet de faire l'analyse ou normalement il doit reprendre le fichier "Chemin" pour commencer l'analyse voici une partir de ce module



Sub Analyse()

Dim Freq As Long
Dim npiste As Integer
Dim nbit As Integer
Dim duréé As Long
Dim durée As Long

Dim j As Long


Dim pfort As Byte
Dim pfaible As Byte


a = FreeFile
Open chemin For Binary As #a
Get #a, 25, Freq
Close #a
Range("B1").Value = Freq



Cet application marche très bien quand j'ai tout ce code sur un seul et même bouton donc si quelqu'un a une idée ca sera avec plaisir parce que je rame un peu et je ne suis toujours qu'un débutant Merci d'avance

4 réponses

Profil bloqué
18 févr. 2010 à 00:02
Public chemin as String ' déclare la variable publique chemin

Public Sub file()

chemin = Application.GetOpenFilename
If UCase(Right(chemin, 3)) <> "WAV" Then
MsgBox "Ce n'est pas un Fichier .Wav ", vbCritical + 4096, "Attention!"
Exit Sub
End If

End Sub

Si cela est identique à VB 6.0 modifie ton module comme précédemment en déclarant Public la variable chemin : elle sera accessible depuis tout les modules et considérée comme une chaine de caractères

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain
0
houston87 Messages postés 26 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 28 septembre 2011
18 févr. 2010 à 02:46
Merci pour ton aide j'ai bien compris par contre j'ai une autre petite question comme je peux faire pour masqué une feuille de calcul qui aura des données qui changent au lancement de chaque analyse mais qui me permettent de tracer une courbe sur une autre feuille .
0
houston87 Messages postés 26 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 28 septembre 2011
18 févr. 2010 à 16:00
Juste une dernière chose quand j'importe mon fichier à partir de mon premier module avec getopenfile et que j'active mon deuxième module ca marche très bien

mais par exemple des que j'essaie de relancer mon deuxième module il ne retrouve plus le fichier comme si il n'a pas été importé ca me met même une erreur d'accès
erreur d'execution 75
0
Profil bloqué
18 févr. 2010 à 17:16
Pour le problème Excel je ne sais pas
Pour le second problème la Sub analyse devrait être Public. De plus que vaut chemin si tu essaies de relancer ?
Erreur 75 : c'est quoi sous Vba


La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain
0