Hoppa till huvudinnehåll

Hur refererar jag till kalkylblad med indexnummer istället för namn i Excel?

För många Excel-användare tenderar de att vanligtvis byta namn på kalkylarkets standardnamn till det som behövs. Men i många fall måste de referera till kalkylbladet baserat på dess indexnummer snarare än dess riktiga namn. Hur uppnår man det? Du kan prova metoden i artikeln.

Referens kalkylblad efter indexnummer istället för namn med användardefinierad funktion


Referens kalkylblad efter indexnummer istället för namn med användardefinierad funktion

Gör så här för att referera till kalkylbladet efter indexnummer istället för namn i Excel.

1. Tryck andra + F11 samtidigt för att öppna Microsoft Visual Basic för applikationer fönster.

2. I Microsoft Visual Basic för applikationer fönstret klickar Insert > Modulerna. Kopiera och klistra in nedanstående VBA-kod i modulfönstret.

VBA-kod: Referensarbetsblad efter indexnummer i Excel

Function SHEETNAME(number As Long) As String
    SHEETNAME = Sheets(number).Name
End Function

3. tryck på andra + Q för att stänga Microsoft Visual Basic för applikationer fönster.

Anmärkningar:

1. Om du behöver hänvisa till ett visst arknamn med dess nummer, välj en tom cell och ange formel = SHEETNAME (1) direkt i formelfältet och tryck sedan på Enter. Se skärmdump:

2. Om du vill få ett cellvärde från ett kalkylblad baserat på dess indexnummer, använd denna formel.

=INDIRECT("'"&SHEETNAME(1) &"'!A1")

3. Och om du vill summera en viss kolumn i ett kalkylblad baserat på dess indexnummer, använd denna formel.

=SUM(INDIRECT("'"&SHEETNAME(1) &"'!C2:C7"))


Relaterade artiklar:

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


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!
Comments (4)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I've successfully implemented the above VBA and formulas. I'm trying to add an additional function. I would like to SUM the same cells across all sheets (created and not yet created) using the above SHEETNAME VBA, but I can seem to figure out how to assemble the formula to make it work. Any ideas? I've tried the following and minor variants, but excel no longer thinks it a formula. =SUM(INDIRECT("'"&SHEETNAME(4) &"'!R7":"'"&SHEETNAME(5) &"'!R7"))
This comment was minimized by the moderator on the site
If you use this UDF, I'd suggest Making two changes in bold below, with notes on why.
Function SHEETNAME(number As Long) As StringApplication.Volatile <--------- this makes the function recalculate when you change the sheets name. Otherwise when you change the sheet name it doesn't change unless you perform a manual recalculation.----------
SHEETNAME = Thisworkbook.Sheets(number).Name <------ If you use this function in multiple workbooks, it will only check names of the workbook the function is in. Otherwise this function will potentially call the tab names from other open Workbooks with this formula.-------
End Function
This comment was minimized by the moderator on the site
Thank you very much for the script and the additions! Exactly what I was looking for without any prior knowledge about VBAs.
This comment was minimized by the moderator on the site
Nice solution. Also, referencing cell B4 of the first sheet in another Excel file can be done like this: =INDIRECT("'[other_filename.xlsx]"&SHEETNAME(1) &"'!B4") However note that the file containing the VBA script needs to be stored as a macro file, .xlsm Cheers,
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations