Note: The other languages of the website are Google-translated. Back to English

Hur konverterar jag alla tabeller till intervall i aktivt arbetsblad?

I Excel kan du använda vissa tabeller för att spela in data, men ibland vill du konvertera tabellen till intervall för att göra någon version. I allmänhet kan du bara konvertera en tabell till intervall en gång, det blir besvärligt om det finns dussintals tabeller i ett ark som behöver konverteras till intervall. Här har jag en VBA-kod som kan konvertera tabeller med aktivt ark till intervall på en gång.

Konvertera alla tabeller till områden av aktivt ark med VBA


Konvertera alla tabeller till områden av aktivt ark med VBA

1. Aktivera arket du vill konvertera dess tabeller och tryck sedan på Alt + F11 för att aktivera Microsoft Visual Basic för applikationer fönster.

2. klick Insert > Modulerna för att skapa ett nytt modulskript, kopiera och klistra in koden nedan till den tomma modulen.

VBA: Konvertera alla tabeller med aktivt ark till intervall

Sub ConvertTablesToRange()
'UpdatebyExtendoffice20180530
    Dim xSheet As Worksheet
    Dim xList As ListObject
    Set xSheet = ActiveWorkbook.ActiveSheet
    For Each xList In xSheet.ListObjects
        xList.Unlist
    Next
End Sub

doc konvertera tabeller till intervall 1

3. Tryck F5 för att köra koden, nu har alla tabeller i det aktuella arket konverterats till intervall.


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (2)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har använt din kod i mitt makro för att konvertera mina tabeller till intervall så att jag kan transponera data för att göra den mer läsbar;
Dim xSheet Som arbetsblad
Dim xList As ListObject
Ställ in xSheet = ActiveWorkbook.ActiveSheet
För varje xList i xSheet.ListObjects
xList.Unlist
Nästa

Det fungerade precis när jag skrev in det i makrot. Av någon anledning när jag kör makrot nu ger det mig ett körtidsfel 1004 på xList.Unlist

Har du några förslag på varför det kan vara så eller hur man fixar det?

Vilken hjälp skulle helst uppskattas.

Tack!
Sam
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har använt din kod i mitt makro för att konvertera mina tabeller till intervall så att jag kan transponera data för att göra den mer läsbar;
-
Dim xSheet Som arbetsblad
Dim xList As ListObject
Ställ in xSheet = ActiveWorkbook.ActiveSheet
För varje xList i xSheet.ListObjects
xList.Unlist
Nästa
-
Det fungerade precis när jag skrev in det i makrot. Av någon anledning när jag kör makrot nu ger det mig ett körtidsfel 1004 på xList.Unlist
-
Har du några förslag på varför det kan vara så eller hur man fixar det? All hjälp skulle vara mycket uppskattad.
-
Tack!
Sam
Det finns inga kommentarer här ännu

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL