Bonjour à tous
Désolée pour le titre, j'ai un peu de mal à exprimer de façon synthétique mon besoin...
Voilà, une partie de ma macro consiste à créer un tableau dans lequel je récupère des informations de plusieurs fichiers que j'ouvre.
J'ai écrit mon code comme suit:
Donc en gros, je récupère d'abord le nom du fichier et je le mets dans une cellule prédéfinie de mon tableau (créé dans un autre bout de la macro), puis je récupère le résultat du comptage des cellules non vides de différentes feuilles sur la ligne 2 et j'inscris le résultat dans une cellule prédéfinie de mon tableau.
Pour info wb correspond aux différents fichiers que j'ouvre par ailleurs.
Mon soucis c'est qu'il semble que je ne puisse pas écrire un truc du genre:
ThisWorkbook.Sheets("Format_Check").Range("b5").Value = ThisWorkbook.Name
directement, il me renvoie que j'ai une variable "not set"....
Pour être claire: la macro ne fonctionne pas
J'espère ne pas avoir été trop confuse dans mes explications et si jamais l'un d'entre vous a une idée, ou veut me dire que mon code est particulièrement mal écrit ), surtout qu'il n"hésite pas !!!
Merci par avance
Gwen
Désolée pour le titre, j'ai un peu de mal à exprimer de façon synthétique mon besoin...
Voilà, une partie de ma macro consiste à créer un tableau dans lequel je récupère des informations de plusieurs fichiers que j'ouvre.
J'ai écrit mon code comme suit:
Code:
i = 6
taille_tableau = 20
ThisWorkbook.Sheets("Format_Check").Range("b5").Value = ThisWorkbook.Name
ThisWorkbook.Sheets("Format_Check").Range("c5").FormulaR1C1 = ThisWorkbook.Sheets("PROCESS KNOWLEDGE").Application.WorksheetFunction.CountA(Range("A2:AZ3"))
ThisWorkbook.Sheets("Format_Check").Range("d5").FormulaR1C1 = ThisWorkbook.Sheets("PRODUCT KNOWLEDGE").Application.WorksheetFunction.CountA(Range("A2:AZ3"))
ThisWorkbook.Sheets("Format_Check").Range("e5").FormulaR1C1 = ThisWorkbook.Sheets("GENERAL SKILLS").Application.WorksheetFunction.CountA(Range("A3:AZ3"))
For i = 5 To taille_tableau
If Sheets("Format_Check").Range("b" & i).Value = "" Then
ThisWorkbook.Sheets("Format_Check").Range("b" & i).FormulaR1C1 = wb.Name
ThisWorkbook.Sheets("Format_Check").Range("c" & i).Value = wb.Sheets("PROCESS KNOWLEDGE").Application.WorksheetFunction.CountA(Range("A2:AZ3"))
ThisWorkbook.Sheets("Format_Check").Range("d" & i).FormulaR1C1 = wb.Sheets("PRODUCT KNOWLEDGE").Application.WorksheetFunction.CountA(Range("A2:AZ3"))
ThisWorkbook.Sheets("Format_Check").Range("e" & i).FormulaR1C1 = wb.Sheets("GENERAL SKILLS").Application.WorksheetFunction.CountA(Range("A2:AZ3"))
i = i + 1
End If
Next
Donc en gros, je récupère d'abord le nom du fichier et je le mets dans une cellule prédéfinie de mon tableau (créé dans un autre bout de la macro), puis je récupère le résultat du comptage des cellules non vides de différentes feuilles sur la ligne 2 et j'inscris le résultat dans une cellule prédéfinie de mon tableau.
Pour info wb correspond aux différents fichiers que j'ouvre par ailleurs.
Mon soucis c'est qu'il semble que je ne puisse pas écrire un truc du genre:
ThisWorkbook.Sheets("Format_Check").Range("b5").Value = ThisWorkbook.Name
directement, il me renvoie que j'ai une variable "not set"....
Pour être claire: la macro ne fonctionne pas
J'espère ne pas avoir été trop confuse dans mes explications et si jamais l'un d'entre vous a une idée, ou veut me dire que mon code est particulièrement mal écrit ), surtout qu'il n"hésite pas !!!
Merci par avance
Gwen
Dernière édition: