Jag håller på med ett makro som skapar en tabell och i den sedan skriver formler av "tabelltyp". Vid skapandet döper den tabellen till första delen i flikens namn och vid ex en summaradsformel, får det pussla ihop formeln själv med hjälp av tabellnamnet det har kvar... ex. "=SUM(" & sMyTable & "[Sålda])" skriver formeln =SUMMA(Modeller[Sålda]).
Problem kan dock uppstå när jag arbetar i en KOPIA på bladet, som då har fått ex namnet 'Modeller 240701 (2)'... och har en tabell redan skapad i ursprungsbladet. Det försöker ändå ge tabellen namnet 'Modeller' i det nya bladet, men eftersom boken redan innehåller en med det namnet döps då tabellen automatiskt till 'Modeller_1'.
Jag försökte med raden sMyTable = Activesheet.Range("A1").ListObject.Name uppdatera variabeln direkt efter skapandet av tabellen om det nu var så att tabellen fått ett annat namn än det avsedda... så att den ändå kunde skriva formlerna med korrekt tabellnamn. Men det får ändå inte in RÄTT namn när det försöker hämta in det. Om den försökt döpt tabellen till 'Modeller' och en konflikt gett den namnet 'Modeller_1', kommer denna programrad ändå att hämta in namnet 'Modeller', trots att det inte är tabellens rätta namn.
Någon som sitter med en smart lösning, endera att få den att uppdatera variabeln korrekt... eller en smart idé för att undvika att försöka namnge till redan befintligt tabellnamn. (Primärt är att slutligen få formlerna skrivna efter aktuellt tabellnamn, vad det nu må vara.)