un truc tout bete qui ne fonctionne plus... je deviens fou :p

Jx7

XLDnaute Nouveau
ReBonjour à toutes et à tous,


Bon alors là je comprend plus rien...

un truc TOUT BÊTE qui a TOUJOURS fonctionné, ne veut plus maintenant...

Code:
Workbooks.Open Filename:=mon_Path + mon_Tableau(i)
Columns("A:A").Select

Au moment de la selection sur la colonne ça me sort:
Code:
erreur d'exécution '1004':

La méthode Select de la classe Range a echoué

et en mode pas à pas:
Code:
erreur d'exécution '1004':

erreur définie par l'application ou par l'objet

Je n'y comprend rien :(
 

Catrice

XLDnaute Barbatruc
Re : un truc tout bete qui ne fonctionne plus... je deviens fou :p

Bonsoir,

Ou bien :

Workbooks.Open Filename:=mon_Path + mon_Tableau(i)
Range("A1").Select
Columns("A:A").Select

Ca peut arriver si par exemple si un graphique Excel est selectionné à l'ouverture du fichier.
 

Jx7

XLDnaute Nouveau
Re : un truc tout bete qui ne fonctionne plus... je deviens fou :p

Catrice à dit:
Bonsoir,

Ou bien :

Workbooks.Open Filename:=mon_Path + mon_Tableau(i)
Range("A1").Select
Columns("A:A").Select

Ca peut arriver si par exemple si un graphique Excel est selectionné à l'ouverture du fichier.
ça j'ai déjà essayé ça ne change rien.

j'essaie dès demain d'activer la feuille pour voir...

merci à vous deux en tout cas :)
 

Jx7

XLDnaute Nouveau
Re : un truc tout bete qui ne fonctionne plus... je deviens fou :p

bon et bien ça ne fonctionne toujours pas... :(

Code:
Workbooks.Open Filename:=mon_Path + mon_Tableau(i)
Workbooks(mon_Tableau(i)).Activate
Sheets(Left(mon_Tableau(i), Len(mon_Tableau(i)) - 4)).Activate
Range("A1").Select
Columns("A:A").Select

Cette fois c'est le Range("A1").Select qu'il n'apprécie pas.

même erreur...

Je comprend vraiment pas pourquoi un truc aussi basique ne passe pas...

merci de votre aide

++
 

Catrice

XLDnaute Barbatruc
Re : un truc tout bete qui ne fonctionne plus... je deviens fou :p

Re,

Les objets ne sont pas correctement adressé.
Là ça fonctionne mieux :

With Sheets(Left(mon_Tableau(i), Len(mon_Tableau(i)) - 4))
.Activate
.Range("A1").Select
.Columns("A:A").Select
End With

En revanche ça plnte un peu plus loin.
Je ne sais pas à quoi correspond mon_Fichier donc Windows(mon_Fichier).Activate plante ...
A suivre ...
 

Tinnou

XLDnaute Nouveau
Re : un truc tout bete qui ne fonctionne plus... je deviens fou :p

Bonjour,

A mon avis, le problème est que dans ton appel de la colonne, Excel a besoin que tu définisses dans quelle feuille il se trouve. En général il prend la feuille active par défaut, mais si la feuille que tu veux sélectionner n'est pas activée, cela peut planter.

Essayes quelquechose comme ça:

Code:
Workbooks.Open Filename:=mon_Path + mon_Tableau(i)
Workbooks(Dir$(mon_Path+mon_Tableau(i))).Sheets(1).Columns("A:A").Select

Moi j'utilise une fonction spéciale pour ouvrir les classeurs, donc ça donnerait plutôt ça:

Code:
Function OpenWorkbook(Workbook_FullPath As String) As Workbook
On Error Resume Next
Workbooks(Dir$(Workbook_FullPath)).Activate
If Err <> 0 Then
Err.Clear
Workbooks.Open Workbook_FullPath
End If
Set OpenWorkbook = Workbooks(Dir$(Workbook_FullPath))
End Function

Sub Main()
Dim Wbk as Workbook
Wbk = OpenWorkbook(mon_Path + mon_Tableau(i))
Wbk.Sheets(1).Columns("A:A").Select


End Sub
 

Statistiques des forums

Discussions
312 104
Messages
2 085 330
Membres
102 862
dernier inscrit
Emma35400