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

Hvordan skjuler eller viser jeg et bestemt regneark baseret på celleværdi i et andet ark?

Er der nogen metoder til at skjule eller skjule en bestemt regnearkfane baseret på et celleindhold i et andet ark? For eksempel, når jeg indtaster teksten “Ja” i cellen G1 i Ark2, vil jeg gerne, at Ark1 skal skjules, og når jeg indtaster “Nej”, skal Ark1 vises med det samme. Hvordan kunne jeg løse dette problem i Excel?

Skjul eller skjul en bestemt regnearksfane baseret på celleværdi med VBA-kode


pil blå højre boble Skjul eller skjul en bestemt regnearksfane baseret på celleværdi med VBA-kode

For at skjule eller skjule en bestemt regnearkfane baseret på en celleværdi i et andet regneark, kan følgende VBA-kode muligvis gøre dig en tjeneste, gør som følger:

1. Gå til regnearket, der indeholder den celleværdi, du vil skjule et andet ark baseret på.

2. Højreklik på arkfanen, og vælg Vis kode, i poppet ud Microsoft Visual Basic til applikationer vindue, kopier og indsæt følgende kode i det tomme modulvindue, se skærmbillede:

VBA-kode: Skjul eller skjul en regnearksfane baseret på celleværdi:

Private Sub Worksheet_Change(ByVal Target As Range)
If [G1] = "Yes" Then
Sheets("Sheet1").Visible = True
Else
Sheets("Sheet1").Visible = False
End If
End Sub

fanen doc skjul baseret på celleværdi 1

Bemærk: I ovenstående kode, G1 og Ja er det celle- og celleindhold, som du vil basere på, og Sheet1 er det specifikke ark, du vil skjule eller skjule. Du kan ændre dem til dit behov.

3. Gem og luk derefter denne kode, når du indtaster “Nej” eller anden tekst i celle G1, er Ark1 skjult, men hvis du indtaster “Ja” i cellen, vises Ark1 med det samme, se skærmbilleder:

fanen doc skjul baseret på celleværdi 2
1
fanen doc skjul baseret på celleværdi 3

 


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2021 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60 dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
officetab bund

 

Sorter kommentarer efter
Kommentarer (23)
Ingen vurderinger endnu. Vær den første til at bedømme!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej
Tak for tippet. Jeg skal gøre det samme scenarie, men ikke kun på én celle (G1 i dette tilfælde), men på alle celler i kolonne G. Jeg har prøvet med "Range", men det virkede ikke.

Privat Sub Worksheet_Change (ByVal Target As Range)
If Range("X2:X100") = "" Så
Ark("EU-OPGAVEBASEREDE MÅL").Synlig = Falsk
Else
Sheets("EU-OPGAVEBASEREDE MÅL").Synlig = Sand
End If
End Sub


Tak på forhånd
Denne kommentar blev minimeret af moderatoren på webstedet
Er der nogen chance for at dette blev besvaret? Jeg løber også ind i dette scenarie, hvor en hel række kommer i spil i stedet for kun én celle... Jeg brugte den samme kodning med de samme resultater.
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg lavede 2 arbejdsark som følger:
Privat Sub Worksheet_Change (ByVal Target As Range)
Hvis [C20] = "Ja" Så
Sheets("sheet1").Synlig = Sand
Else
Sheets("ark1").Synlig = Falsk
End If
Hvis [C22] = "Ja" Så
Sheets("sheet2").Synlig = Sand
Else
Sheets("ark2").Synlig = Falsk
End If
End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Meget hjælpsom!
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg vil gerne se, om du kan hjælpe med mit problem. Jeg har stort set haft denne nøjagtige kode i et ark, jeg bruger, men med en eller-funktion, så svaret kan være "ja" eller "sandt". Men det ark, der bliver skjult/vist, skjuler sig nogle gange igen af ​​ukendte årsager. Det vises, når jeg skriver ja, men når jeg skal bruge det senere, skjules det igen, selvom celleværdien stadig er ja. Har du nogen ide om, hvorfor dette kan ske, og/eller hvordan man løser det?
Kode til reference:
Private Sub Worksheet_Change(ByVal Target As Range)'Skjuler/viser kalibreringsside
Hvis [B18] = "Ja" eller Target.Value = "True" Så
Sheets ("XXX Verification"). Synlig = Sand
Else
Sheets("XXX Verification").Synlig = Falsk
End If

Denne kommentar blev minimeret af moderatoren på webstedet
Hej Jeg har en projektmappe med flere navngivne faner knyttet til et indeksark foran. Brugeren kan vælge de ark, de vil bruge, ved at markere en boks ud for arknavnet - blank, ikke tilgængelig eller Ja (rulleliste). Er der en måde at tilpasse denne kode, så arket er synligt, hvis afkrydsningsfeltet er tomt eller indeholder "Ja", men ikke synligt, hvis afkrydsningsfeltet indeholder "N/A".
Jeg har prøvet, men ved ikke nok om VBA til at få det til at fungere. Tak
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg ønsker at skjule eller vise ark baseret på en celleværdi (Ja/Nej). Værdierne er i en tabel (tblFileContents) og kolonne D4:D25, og arknavnet er i A4:A25 på ark . Rækkefølgen af ​​varerne kan ændres. Har du en reference til et eksempel, der ville tillade mig at gøre dette?
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg har det samme problem, og en anden har givet en løsning.
Lav en tabel (formater som tabel) med 2 kolonner, navngiv venstre kolonne Ark for at vise/skjule, den højre kolonne er op til dig. Indsæt alle arknavne i venstre kolonne
Vælg derefter Vis kode for denne fane, og indtast Dim Changed As Range, c As Range, rMTS As Range
Dim jeg så længe
Dim bShowAll As Boolean

Indstil rMTS = Range("TblShowHide[Mark to Show]")
Sæt ændret = Skæring (Mål, rMTS)
Hvis Ikke Ændret Er Intet Så
bShowAll = Len(rMTS.Cells(1).Value) > 0
On Error Resume Next
For i = 2 Til rMTS.Rows.Count
Sheets(Range("TblShowHide[Show/Hide Sheets]").Cells(i).Value).Visible = IIf(bShowAll, True, Len(rMTS.Cells(i).Value) > 0)
Næste jeg
På Fejl GoTo 0
End If
End Sub


Denne kommentar blev minimeret af moderatoren på webstedet
Jeg vil give dette en chance. Mange tak!
Denne kommentar blev minimeret af moderatoren på webstedet
Ved ikke hvad jeg skal ændre, men det virkede ikke for mig.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Jean,
ja jeg har et eksempel jeg vedhæfter her. Omdøb filen til example.xlsm (den er ikke zippet, men skulle omdøbes for at uploade)
På menufanen er der en tabel med de forskellige fanenavne, lav et x eller et hvilket som helst andet tegn for at vise fanen, fjerner man tegnet, skjuler fanen sig.
Håber det hjælper
Denne kommentar blev minimeret af moderatoren på webstedet
Denne indeholder flere elementer, men ingen excel-fil.
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg ønsker at have en Menu/Indholdsfortegnelse som mit første arbejdsark og baseret på Ja/Nej svar - visse arbejdsark vises dvs. mere end 1 bliver synlige.
Jeg kæmper for at få flere arbejdsark til at blive vist baseret på ovenstående kode.
Kan jeg bruge en OG-funktion, f.eks. Hvis X-celle = "Ja", så Gør Y-ark synligt og Z-ark og K-ark?
Ethvert råd modtages meget gerne.
Hilsen
Helen
Denne kommentar blev minimeret af moderatoren på webstedet
Kan du ikke finde ud af, hvad du kan gøre?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej ven,

Du kan åbne et nyt Google-ark, tilføje et nyt ark, så der er et "Sheet1" og et "Sheet2" og derefter gå til Tools > Script Editor. Indsæt følgende i editoren.

function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("Sheet1");
var sheet2 = ss.getSheetByName("Sheet2");

var celle1 = ark1.getRange('B2');

if (cell1.getValue() == 2) {
ark2.skjulArk();
}

if (cell1.getValue() == 3) {
ark2.visSheet();
}
}

Prøv venligst.

Med venlig hilsen,
Mandy
Denne kommentar blev minimeret af moderatoren på webstedet
Denne kode fungerer godt, men jeg har 42 variabler til 70 ark, så denne kode bliver meget lang og holder op med at virke. Er der en måde at lave denne kode i sektioner, så den ikke overskrider den kodestørrelse, som VBA kan håndtere? Eller skal jeg dele disse op i to separate exceller?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Liz
Beklager, på nuværende tidspunkt er der ikke en god måde at løse dit problem på.
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg har en værdi i celle B1, at hvis ja viser ark1, men også en værdi i B2, det er hvis ja viser ark2 osv osv.. den skjuler/skjuler det sidste ark fint, men ikke resten, hvordan ville jeg gå frem for at få vist 10 værdier 10 forskellige ark? tak
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, Andy,
For at løse dit problem skal du anvende nedenstående kode:
Private Sub Worksheet_Change(ByVal Target As Range)
If [B2] = "Yes" Then
Sheets("Sheet1").Visible = True
Else
Sheets("Sheet1").Visible = False
End If
If [B3] = "Yes" Then
Sheets("Sheet2").Visible = True
Else
Sheets("Sheet2").Visible = False
End If
If [B4] = "Yes" Then
Sheets("Sheet3").Visible = True
Else
Sheets("Sheet3").Visible = False
End If
If [B5] = "Yes" Then
Sheets("Sheet4").Visible = True
Else
Sheets("Sheet4").Visible = False
End If
If [B6] = "Yes" Then
Sheets("Sheet5").Visible = True
Else
Sheets("Sheet5").Visible = False
End If
End Sub

Bemærk: I ovenstående kode skal du blot kopiere nedenstående scripts flere gange og ændre cellereferencen og arknavnet til dit eget.
If [B2] = "Yes" Then
Sheets("Sheet1").Visible = True
Else
Sheets("Sheet1").Visible = False
End If


Prøv venligst, håber det kan hjælpe dig!
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg har et problem, hvor jeg ønsker, at fanen skal vises for en række værdier i stedet for blot et JA eller NEJ. Når jeg prøver at gentage IF-sætningen i sub'en, giver det mig en fejl, og når jeg forsøger at liste flere værdier i if-sætningen, får jeg en fejl. Nogle ideer?

Det ser næsten ud til, at jeg skal bruge en IF/OR-sætning, men jeg er ikke sikker på, hvordan det ville fungere.

Privat Sub Worksheet_Change (ByVal Target As Range)
Hvis [K6] = "VS 1", "VS 2", "VS 3", VS 4"
Sheets("Side6").Synlig = Sand
Else
Sheets("Side6").Synlig = Falsk
End If
End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Margaret,
For at løse dit problem skal du anvende nedenstående kode, du skal bruge Eller til at tilslutte dig betingelserne.
Private Sub Worksheet_Change(ByVal Target As Range)
If [K6] = "VS 1" Or [K6] = "VS 2" Or [K6] = "VS 3" Or [K6] = "VS 4" Then
Sheets("Page6").Visible = True
Else
Sheets("Page6").Visible = False
End If
End Sub

Prøv venligst, håber det kan hjælpe dig!
Denne kommentar blev minimeret af moderatoren på webstedet
Skyyang - dette fungerede perfekt. Tak for dit hurtige svar!
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg forsøger at bruge dette, men det kommer op med "kompileringsfejl - kan ikke finde projekt eller bibliotek" og fremhæver cellen, hvor rullemenuen Ja/Nej er placeret. Jeg tror, ​​det kan skyldes, at dette er en fusioneret celle, er der nogen vej udenom dette?
Der er endnu ingen kommentarer her
Efterlad dine kommentarer
Sender som gæst
×
Bedøm dette indlæg:
0   Tegn
Foreslåede steder

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL