Ouvrir classeur en invisible - blocage macro
Bonjour
Ma macro doit ouvrir certains classeurs EXCEL qui sont dans une bibliothèque SharePoint
Ces classeurs sont typés avec une métadonnée qui contient le mot 'Affiche'
Elle doit importer les lignes des différents classeurs afin ensuite d'en faire une statistique récapitulative des quantités d'affiches qui sont dans les différents classeurs
Cette macro est stockée dans un module d'un tableau qui a :
- une feuille PARAMETRES avec l'URL de la bibliothèque
- une feuille TEMP : elle contient l'export EXCEL issu d'un affichage de la bibliothèque chaque ligne correspond aux références des différents classeurs avec en particulier le nom du fichier, les métadonnées
- une feuille DONNEES pour récupérer les lignes détails pour les statistiques
Le traitement désiré consiste à faire une boucle pour traiter les différentes lignes de TEMP et à chaque ligne, je veux ouvrir le classeur en lecture seule et en invisible, lire les lignes et les ranger dans DONNEES (mais je n'en suis pas encore là !)
En pratique, on ouvre le premier classeur à traiter, il s'affiche alors qu'on ne voudrait pas
Si je ferme le classeur, la macro de toute façon ne continue pas à s'exécuter et la boucle s'arrête.
J'ai essayé différentes solutions de ce que j'ai vu dans les forums mais rien ne fonctionne
Voici le code actuel:
Sub IMPORTS_DONNEES()
'
' traitement des classeurs
'
i% = 2
Do While Sheets("TEMP").Cells(i%, "A") <> ""
If Right(Sheets("TEMP").Cells(i%, "D"), 7) = "Affiche" Then
chemin = Sheets("PARAMETRES").Range("A1") & Sheets("TEMP").Cells(i%, "G")
fichier = Sheets("TEMP").Cells(i%, "G")
Workbooks.Open Filename:=chemin, ReadOnly:=True
Windows(fichier).Visible = False
Workbooks(fichier).Activate
ActiveWorkbook.Close False
Else
End If
i% = i% + 1
Loop
End Sub
Merci d'avance
bonjour
as-tu essayé de simplement utiliser des liaisons entre classeurs (de simples signes = ) ou bien le menu Données, Données externes ?
Bonjour
Merci pour la réponse
Je viens de réussir ce matin à débloquer la situation et la faire fonctionner comme je veux et le résultat est assez troublant
J'ai associé à la macro un raccourci : CTRL SHIFT I
Quand je lance par le raccourci, le phénomène bloquant se produit
Si je vais dans la liste des macros et que je fais 'exécuter' ça fonctionne !
Et c'est parfaitement reproductible
Je vais essayer en créant un bouton avec lancement de la macro