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

Ինչպե՞ս թաքցնել կամ ցուցադրել հատուկ աշխատանքային թերթը, որը հիմնված է մեկ այլ թերթի բջիջի արժեքի վրա:

Կա՞ն որևէ մեթոդներ, որպեսզի մենք թաքցնենք կամ ցուցադրենք հատուկ թերթիկի ներդիրը, որը հիմնված է մեկ այլ թերթի բջջային պարունակության վրա: Օրինակ, երբ Sheet1- ի G2 բջիջում մուտքագրում եմ «Այո» տեքստը, ես կցանկանայի, որ Sheet1- ը թաքնված լինի, իսկ երբ ես մուտքագրեմ «Ոչ», Sheet1- ը միանգամից ցուցադրվի: Ինչպե՞ս կարող էի լուծել այս խնդիրը Excel- ում:

Թաքցնել կամ ցուցադրել հատուկ աշխատանքային թերթիկի ներդիր, որը հիմնված է բջջային արժեքի վրա ՝ VBA կոդով


նետ կապույտ աջ պղպջակ Թաքցնել կամ ցուցադրել հատուկ աշխատանքային թերթիկի ներդիր, որը հիմնված է բջջային արժեքի վրա ՝ VBA կոդով

Մեկ այլ աշխատանքային թերթում բջջային արժեքի վրա հիմնված որոշակի աշխատանքային թերթի ներդիրը թաքցնելու կամ ցուցադրելու համար հետևյալ VBA կոդը կարող է ձեզ լավություն բերել, արեք հետևյալը.

1, Գնացեք աշխատաթերթը, որը պարունակում է այն բջիջի արժեքը, որի վրա ցանկանում եք թաքցնել մեկ այլ թերթ, որը հիմնված է:

2, Աջ կտտացրեք թերթիկի ներդիրին և ընտրեք Դիտել կոդը, դուրս ցցված Microsoft Visual Basic հավելվածների համար պատուհանը, խնդրում ենք պատճենել և տեղադրեք հետևյալ կոդը դատարկ Մոդուլի պատուհանում, տեսեք,

VBA կոդ. Թաքցնել կամ թաքցնել աշխատաթերթը ՝ հիմնվելով բջջային արժեքի վրա.

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

doc թաքցնել ներդիրը `հիմնված բջջային 1 արժեքի վրա

Նշում: Վերոնշյալ ծածկագրում G1 և Այո այն բջջի և բջջի պարունակությունն է, որի վրա ցանկանում եք հիմնվել, և Sheet1 այն հատուկ թերթն է, որը ցանկանում եք թաքցնել կամ ցուցադրել: Կարող եք դրանք փոխել ըստ ձեր կարիքի:

3, Ապա պահեք և փակեք այս կոդը, երբ G1 բջիջում մուտքագրեք «Ոչ» կամ այլ տեքստ, Sheet1- ը թաքնված է, բայց եթե վանդակում մուտքագրեք «Այո», Sheet1- ը միանգամից ցուցադրվում է, տեսեք սքրինշոթերը.

doc թաքցնել ներդիրը `հիմնված բջջային 2 արժեքի վրա
1
doc թաքցնել ներդիրը `հիմնված բջջային 3 արժեքի վրա

 


Գրասենյակի արտադրողականության լավագույն գործիքները

Excel-ի համար Kutools-ը լուծում է ձեր խնդիրների մեծ մասը և բարձրացնում ձեր արտադրողականությունը 80%-ով

  • Վերաօգտագործել: Արագ տեղադրեք բարդ բանաձևեր, գծապատկերներ և այն ամենը, ինչ դուք նախկինում օգտագործել եք. Ryածկագրել բջիջները գաղտնաբառով; Ստեղծեք փոստային ցուցակ և նամակներ ուղարկել ...
  • Super Formula Bar (հեշտությամբ խմբագրեք տեքստի և բանաձևի բազմաթիվ տողեր); Ընթերցանության դասավորությունը (հեշտությամբ կարդալ և խմբագրել մեծ թվով բջիջներ); Տեղադրել ֆիլտրացված տիրույթում...
  • Միաձուլել բջիջները / տողերը / սյունակները առանց տվյալների կորստի. Պառակտված բջիջների պարունակությունը; Միավորել կրկնօրինակ տողերը / սյունակները... Կանխել կրկնօրինակ բջիջները; Համեմատեք միջակայքերը...
  • Ընտրեք Կրկնօրինակ կամ Եզակի Շարքեր; Ընտրեք դատարկ շարքեր (բոլոր բջիջները դատարկ են); Super Find և Fuzzy Find շատ աշխատանքային գրքույկներում; Պատահական ընտրություն ...
  • Actշգրիտ պատճեն Բազմաթիվ բջիջներ ՝ առանց բանաձևի հղումը փոխելու; Ավտոմատ ստեղծեք հղումներ դեպի մի քանի թերթեր; Տեղադրեք փամփուշտներ, Տուփեր և ավելին ...
  • Քաղվածք տեքստ, Տեքստ ավելացնել, հեռացնել ըստ դիրքի, Հեռացնել տարածությունը; Ստեղծել և տպել էջային ենթագոտիներ; Փոխարկել բջիջների բովանդակության և մեկնաբանությունների միջև...
  • Սուպեր զտիչ (պահպանել և կիրառել ֆիլտրի սխեմաները այլ թերթերի վրա); Ընդլայնված տեսակավորում ըստ ամիս / շաբաթ / օր, հաճախականություն և ավելին; Հատուկ զտիչ համարձակ, շեղատառով ...
  • Միավորել աշխատանքային տետրերը և աշխատանքային թերթերը; Միավորել աղյուսակները ՝ հիմնված հիմնական սյունակների վրա; Տվյալները բաժանեք մի քանի թերթերի; Խմբաքանակի փոխակերպում xls, xlsx և PDF...
  • Ավելի քան 300 հզոր հատկություններ. Աջակցում է Office / Excel 2007-2021 և 365: Աջակցում է բոլոր լեզուներին: Հեշտ տեղակայում ձեր ձեռնարկությունում կամ կազմակերպությունում: Ամբողջական հնարավորություններ 30-օրյա անվճար փորձարկում: 60-օրյա գումարի վերադարձի երաշխիք:
kte էջանիշը 201905

Office Tab- ը Tabbed ինտերֆեյսը բերում է Office, և ձեր աշխատանքը շատ ավելի դյուրին դարձրեք

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50%-ով և նվազեցնում մկնիկի հարյուրավոր սեղմումները ձեզ համար ամեն օր:
officetab ներքևում

 

Տեսակավորել մեկնաբանությունները ըստ
մեկնաբանություններ (23)
Դեռևս գնահատականներ չկան: Եղիր առաջինը, ով կգնահատի:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարեւ Ձեզ
Շնորհակալություն հուշման համար: Ես պետք է անեմ նույն սցենարը, բայց ոչ միայն մեկ բջիջի վրա (այս դեպքում G1), այլ G սյունակի բոլոր բջիջների վրա: Ես փորձել եմ «Range»-ով, բայց չի ստացվել:

Private Sub Worksheet_Change (ByVal Target as Range)
If Range ("X2:X100") = "" Ապա
Թերթեր («ԵՄ ԱՌԱՋԱԴՐԱՆՔՆԵՐԻ ՀԻՄՆԱԿԱՆ ՉԱՓՈՒՄՆԵՐ»): Տեսանելի = Սխալ
Ուրիշ
Թերթեր («ԵՄ ԱՌԱՋԱԴՐԱՆՔՆԵՐԻ ՀԻՄՆԱԿԱՆ ՉԱՓՈՒՄՆԵՐ»): Տեսանելի = Ճշմարիտ
Վերջ: Եթե
Վերջ Sub


Կանխավ շնորհակալ ենք Ձեր
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հնարավո՞ր է, որ սա պատասխան տա: Ես նաև բախվում եմ այս սցենարին, երբ մի ամբողջ տիրույթ է գործի դնում ընդամենը մեկ բջիջի փոխարեն... Ես օգտագործել եմ այս նույն կոդավորումը՝ նույն արդյունքներով:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես կատարեցի 2 աշխատանքային թերթ հետևյալ կերպ.
Private Sub Worksheet_Change (ByVal Target as Range)
If [C20] = «Այո» Ապա
Թերթեր ("sheet1"). Տեսանելի = Ճշմարիտ
Ուրիշ
Թերթեր ("sheet1"). Տեսանելի = Կեղծ
Վերջ: Եթե
If [C22] = «Այո» Ապա
Թերթեր ("sheet2"). Տեսանելի = Ճշմարիտ
Ուրիշ
Թերթեր ("sheet2"). Տեսանելի = Կեղծ
Վերջ: Եթե
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Շատ օգտակար!
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես ուզում եմ տեսնել, թե արդյոք դուք կարող եք օգնել իմ խնդրին: Ես, ըստ էության, ունեցել եմ հենց այս կոդը իմ օգտագործած թերթիկում, բայց կամ ֆունկցիայով, այնպես որ պատասխանը կարող է լինել «այո» կամ «ճշմարիտ»: Այնուամենայնիվ, թերթիկը, որը թաքցվում է/չթաքնվում է, երբեմն անհայտ պատճառներով նորից թաքցնում է իրեն: Այն կցուցադրվի, երբ ես մուտքագրեմ այո, բայց երբ այն հետագայում օգտագործեմ, այն նորից թաքնված է, թեև բջիջի արժեքը դեռ այո է: Կա՞ պատկերացում, թե ինչու դա կարող է տեղի ունենալ, և/կամ ինչպես շտկել այն:
Հղման կոդը.
Մասնավոր ենթաթերթ_Change (ByVal Target As Range)'Թաքցնում է/հանում է չափաբերման էջը
If [B18] = «Այո» Կամ Target.Value = «Ճիշտ» Ապա
Թերթեր («XXX Ստուգում»): Տեսանելի = Ճշմարիտ
Ուրիշ
Թերթեր («XXX Ստուգում»): Տեսանելի = Կեղծ
Վերջ: Եթե

Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
HiI-ն ունեմ աշխատանքային գրքույկ՝ բազմաթիվ անուններով ներդիրներով, որոնք առջևում կապված են ինդեքսի թերթիկին: Օգտագործողը կարող է ընտրել այն թերթիկները, որոնք ցանկանում է օգտագործել՝ նշելով թերթի անվան կողքին գտնվող վանդակը՝ դատարկ, N/A կամ Այո (բացվող ցուցակ): Կա՞ այս կոդը հարմարեցնելու միջոց, որպեսզի թերթիկը տեսանելի լինի, եթե վանդակը դատարկ է կամ պարունակում է «Այո», բայց տեսանելի չէ, եթե վանդակը պարունակում է «N/A»:
Ես փորձել եմ, բայց բավականաչափ չգիտեմ VBA-ի մասին, որպեսզի այն աշխատի: Շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես ցանկանում եմ թաքցնել կամ ցուցադրել թերթերը՝ հիմնված բջջային արժեքի վրա (Այո/Ոչ): Արժեքները գտնվում են աղյուսակում (tblFileContents) և D4:D25 սյունակում, իսկ թերթի անունը՝ A4:A25 թերթիկի վրա: . Ապրանքների հերթականությունը կարող է փոխվել։ Դուք հղում ունե՞ք մի օրինակի, որը թույլ կտա ինձ դա անել:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես նույն հարցն ունեմ, և մեկ ուրիշը լուծում է տվել։
Կազմեք աղյուսակ (ձևաչափ որպես աղյուսակ) 2 սյունակով, անվանեք ձախ սյունակը Թերթեր՝ ցուցադրելու/թաքցնելու համար, աջ սյունակը կախված է ձեզանից: Թերթի բոլոր անունները դրեք ձախ սյունակում:
Այնուհետև ընտրեք Դիտել կոդը այս ներդիրի համար և մուտքագրեք Dim Changed As Range, c As Range, rMTS As Range:
Dim i քանի դեռ
Dim bShowAll As Boolean

Սահմանել rMTS = Range («TblShowHide[Mark to Show]»)
Set Changed = Intersect (Թիրախ, rMTS)
Եթե ​​չի փոխվել, ոչինչ է, ապա
bShowAll = Len(rMTS.Cells(1).Value) > 0
Ս.թ. սխալի Ռեզյումե Next
i = 2-ի համար դեպի rMTS.Rows.Count
Sheets(Range("TblShowHide[Show/Hide Sheets]").Cells(i).Value).Visible = IIf(bShowAll, True, Len(rMTS.Cells(i).Value) > 0)
Հաջորդ i
Սխալի դեպքում GoTo 0
Վերջ: Եթե
Վերջ Sub


Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես կփորձեմ սա: Շատ շնորհակալություն!
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Չգիտեմ, թե ինչ պետք է փոխեմ, բայց դա ինձ մոտ չաշխատեց:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև Ժան,
այո, ես մի օրինակ ունեմ, որը կցեցի այստեղ: Վերանվանել ֆայլը example.xlsm (այն zipացված չէ, բայց վերբեռնելու համար պետք է վերանվանվի)
Մենյուի ներդիրում կա աղյուսակ՝ տարբեր ներդիրների անուններով, ներդիրը ցուցադրելու համար կազմեք x կամ որևէ այլ նիշ, եթե դուք հեռացնում եք նիշը, ներդիրը թաքցվում է:
Հուսով եմ, որ դա օգնում է
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Սա պարունակում է մի քանի տարրեր, բայց ոչ excel ֆայլ:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես ուզում եմ ունենալ մենյու/բովանդակության աղյուսակ՝ որպես իմ առաջին աշխատաթերթ և հիմնվելով Այո/Ոչ պատասխանների վրա. որոշ աշխատաթերթեր հայտնվում են, այսինքն՝ 1-ից ավելին տեսանելի է դառնում:
Ես պայքարում եմ, որպեսզի մի քանի աշխատաթերթեր հայտնվեն վերը նշված կոդի հիման վրա:
Կարո՞ղ եմ օգտագործել AND ֆունկցիա, օրինակ, եթե X բջիջ = «Այո», Ապա Դարձնեմ Յ Թերթիկը տեսանելի, իսկ Z Թերթիկը և K Թերթը:
Ցանկացած խորհուրդ ողջունելի է:
Regards
Helen
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
А я вот не могу понять, как такое сделать в гугл таблицах именно?
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարեւ բարեկամ,

Դուք կարող եք բացել նոր Google թերթ, ավելացնել նոր թերթ, որպեսզի այնտեղ լինեն «Sheet1» և «Sheet2», ապա անցեք Գործիքներ > Սցենարների խմբագրիչ: Խմբագրում տեղադրեք հետևյալը.

ֆունկցիա myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName ("Sheet1");
var sheet2 = ss.getSheetByName ("Sheet2");

var cell1 = sheet1.getRange ('B2');

եթե (cell1.getValue() == 2) {
sheet2.hideSheet();
}

եթե (cell1.getValue() == 3) {
sheet2.showSheet();
}
}

Խնդրում ենք փորձել:

Sincerely,
Mandy
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Այս կոդը հիանալի է աշխատում, սակայն ես ունեմ 42 փոփոխական 70 թերթի համար, այնպես որ այս կոդը շատ երկար է դառնում և դադարում է աշխատել: Կա՞ միջոց այս ծածկագիրը բաժիններով դարձնելու համար, որպեսզի չգերազանցի կոդերի չափը, որը VBA-ն կարող է մշակել: Թե՞ պետք է սրանք երկու առանձին էքսելների բաժանեմ։
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև, Լիզ
Ներեցեք, ներկայումս ձեր խնդիրը լուծելու լավ միջոց չկա:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես B1 բջիջում արժեք ունեմ, որը, եթե այո, բացում է sheet1-ը, բայց նաև արժեք B2-ում, եթե այո, ապա թաքցնում է Sheet2-ը և այլն, և այլն: այն թաքցնում է/բացում է վերջին թերթիկը տուգանք, բայց ոչ մնացածը, ինչպես կարող եմ անել, որ ասենք 10 արժեքները չթաքցվեն: 10 տարբեր թերթիկներ. շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև, Էնդի,
Ձեր խնդիրը լուծելու համար խնդրում ենք կիրառել հետևյալ կոդը.
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

ՆշումՎերը նշված կոդում պարզապես անհրաժեշտ է մի քանի անգամ պատճենել ստորև բերված սկրիպտները և փոխել բջջային հղումը և թերթի անվանումը ձեր սեփականի:
If [B2] = "Yes" Then
Sheets("Sheet1").Visible = True
Else
Sheets("Sheet1").Visible = False
End If


Խնդրում ենք փորձել, հուսով եմ, որ դա կարող է օգնել ձեզ:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես խնդիր ունեմ, որտեղ ես ուզում եմ, որ ներդիրը ցույց տա մի շարք արժեքներ, այլ ոչ թե պարզապես ԱՅՈ կամ ՈՉ: Երբ ես փորձում եմ կրկնել IF հայտարարությունը ենթակետում, այն ինձ սխալ է տալիս, իսկ երբ փորձում եմ մի քանի արժեքներ թվարկել if դրույթում, ես սխալ եմ ստանում: Կա՞ն գաղափարներ:

Գրեթե թվում է, որ ես պետք է օգտագործեմ IF/OR հայտարարություն, բայց վստահ չեմ, թե ինչպես դա կաշխատի:

Private Sub Worksheet_Change (ByVal Target as Range)
Եթե ​​[K6] = «VS 1», «VS 2», «VS 3», VS 4» Ապա
Թերթեր («Էջ 6»). Տեսանելի = Ճշմարիտ
Ուրիշ
Թերթեր («Էջ6»): Տեսանելի = Կեղծ
Վերջ: Եթե
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև, Մարգարիտ,
Ձեր խնդիրը լուծելու համար խնդրում ենք կիրառեք ստորև բերված կոդը, պայմաններին միանալու համար պետք է օգտագործեք Or.
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

Խնդրում ենք փորձել, հուսով եմ, որ դա կարող է օգնել ձեզ:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Skyyang - սա հիանալի աշխատեց: Շնորհակալություն արագ պատասխանի համար!
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես փորձում եմ օգտագործել սա, բայց այն գալիս է «կազմելու սխալ. չեմ գտնում նախագիծը կամ գրադարանը» և ընդգծում է այն բջիջը, որտեղ գտնվում է Այո/Ոչ բացվող ցանկը: Կարծում եմ, որ դա կարող է պայմանավորված լինել այս միաձուլված բջիջով, կա՞ որևէ ճանապարհ սրանով:
Առայժմ ոչ մի մեկնաբանություն չկա
Թողեք ձեր մեկնաբանությունները
Հրապարակում որպես հյուր
×
Գնահատեք այս գրառումը.
0   Անձնավորություններ
Առաջարկվող վայրեր

Հետեւեք մեզ

Հեղինակային իրավունքի © 2009 - www.extendoffice.com. | Բոլոր իրավունքները պաշտպանված են. Powered by ExtendOffice. | | Կայքի քարտեզ
Microsoft- ը և Office- ի պատկերանշանը հանդիսանում են Microsoft Corporation- ի ապրանքային նշաններ կամ գրանցված ապրանքային նշաններ ԱՄՆ-ում և (կամ) այլ երկրներում:
Պաշտպանված է Sectigo SSL- ի կողմից