professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009
-
12 févr. 2009 à 21:44
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009
-
14 févr. 2009 à 06:56
je pense être au bon endroit:
Bonjour, je suis en train de faire une macro pour ouvrir un fichier
texte créé par un onduleur. J'ai fait un bouton qui ouvre le fichier
txt dans un nouveau classeur mais je n'arrive pas a rendre ce classeur
actif: si je sélectionne dans la macro 2 colonnes, ce sont les colonnes
du fichier ou se trouve la macro qui sont sélectionnées...Auriez vous
une idée?
2eme question, quand j'ouvre le fichier txt, est il possible de créer un graphique depuis le fichier ou se trouve la macro?
Public Function ExtractFileName(ByVal sFullPath As String) As String
If InStr(sFullPath, "") = 0 Or Right(sFullPath, 1) = "" Then
ExtractFileName = ""
Exit Function
End If
ExtractFileName = Mid(sFullPath, InStrRev(sFullPath, "") + 1)
End Function
cs_Orohena
Messages postés577Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention20 novembre 20104 12 févr. 2009 à 23:26
filetoopen est le nom complet de ton fichier texte, par exemple "c:\onduleur.txt".
Par conséquent Windows(fileToOpen).Activate n'est pas bon. Soit tu extrais le nom du fichier avec la fonction extractFileName proposée par Supra3000 ou bien par Workbooks(Workbooks.Count)
Donc, essaie l'une de ces méthodes :
Windows(extactFileName(fileToOpen)).Activate ou Windows(Workbooks(Workbooks.Count)).Activate
cs_Orohena
Messages postés577Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention20 novembre 20104 12 févr. 2009 à 22:08
- Pour rendre actif le classeur onduleur.xls :
WorkBooks("onduleur.xls").Activate
- tu peux facilement créer un graphique dont la source de données est dans un autre classeur. Tu dois simplement spécifier le classeur et la feuille dans la syntaxe de la source de données. Par exemple :
[onduleur]Feuil1!A1:A100
Amicalement
Vous n’avez pas trouvé la réponse que vous recherchez ?
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009 12 févr. 2009 à 22:26
j'avais bien essayer WorkBooks("onduleur.xls").Activate mais j'ai une erreur 9 "l'indice n'appartient pas a la selection".
je choisis le fichier txt a ouvrir par "GetOpenFilename" et le nom du fichier ouvert est dans "fileToOpen" (le fichier est different a chaque fois).J'ai essayé "WorkBooks("fileToOpen").Activate " mais cela ne va pas...
Je ne sais pas si cela est important mais c'est un fichier txt que j'ouvre dans excel avec la fonction "Workbooks.OpenText Filename".
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009 12 févr. 2009 à 22:52
je crois que je n'ai pas compris (en fait j'en suis meme sur!)
j'arrive a ouvrir le fichier txt que je veux via un bouton, ce qui m'ouvre un nouveau classeur mais c'est ce classeur que je n'arrive pas a activer, il prend toujours le fichier qui contient la macro pour selectionner les colonnes (voir ci dessous)
Private Sub CommandButton1_Click()
fileToOpen = Application _
.GetOpenFilename("Text Files (*.txt), *.txt")
If fileToOpen <> False Then
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009 13 févr. 2009 à 08:20
je vais paraitre idiot mais je ne sais pas ou mettre la fonction de supra3000: j'ai fait plusieurs essai mais il n'en tient pas compte! je n'ai pas trouvé de site qui explique ou mettre les differentes fonctions, macro etc...
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009 13 févr. 2009 à 09:37
a y est j'ai reussi! j'ia fait une erreur dans "extractFileName" j'ai oublié le "r". Merci pour votre aide a tous.
Je continue ma macro et je fais appel a vous des que j'ai un soucis ou je suis bloqué!
professeurt
Messages postés25Date d'inscriptionjeudi 7 décembre 2000StatutMembreDernière intervention14 février 2009 13 févr. 2009 à 14:44
encore bloqué!
j'ai la variable "fileToOpen" utilisée dans "feuill1" et tout fonctionne mais des que j'utilise "fileToOpen" dans le module 1 il me retourne une valeur vide ! comment faire pour que cette variable soit reconnue dans tous les modules?
cs_Orohena
Messages postés577Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention20 novembre 20104 13 févr. 2009 à 18:49
Hello
Si ça marche, je te suggère de poster le code et faire "réponse acceptée" et éventuellement remercier Supra3000 qui t'a donné l'information principale.
Workbooks("ouverture fichier maxtalk.xls").Close SaveChanges:=False
End If
End Sub
Public Function ExtractFileName(ByVal sFullPath As String) As String
If InStr(sFullPath, "") = 0 Or Right(sFullPath, 1) = "" Then
ExtractFileName = ""
Exit Function
End If
ExtractFileName = Mid(sFullPath, InStrRev(sFullPath, "") + 1)
End Function
Private Sub tension_Click()
'insertion d'une condition : si la cas ea cocher checkbox1 est activée => se termine par then
If tension.Value = True Then
Range("a1") = "test"
Else: Range("a1") = ""