Բաց թողնել հիմնական բովանդակությունը
 

Ինչպե՞ս անել, որ միայն մեկ վանդակը ընտրվի Excel- ի վանդակների խմբում:

Հեղինակ՝ Սիլյուվիա Վերջին փոփոխությունը՝ 2020-07-09

Ինչպես ցույց է տրված ստորև նշված էկրանի նկարը, 2-րդ շարքում թվարկված վանդակների մի խմբի համար միայն մեկ վանդակը ընտրելիս կամ ստուգելիս մյուս վանդակները կասեցված կլինեն: Ինչպե՞ս հասնել դրան: Այս հոդվածում պարունակվող VBA կոդը կարող է օգնել ձեզ:

Կատարեք միայն մեկ վանդակում, որպեսզի ընտրվի VBA կոդով


Կատարեք միայն մեկ վանդակում, որպեսզի ընտրվի VBA կոդով

Ստորև ներկայացված VBA կոդերը կարող եք գործարկել, որպեսզի ստուգման տուփի խմբում յուրաքանչյուր անգամ ընտրեք միայն մեկ վանդակը: Խնդրում եմ արեք հետևյալ կերպ.

1. Նախ, խնդրում ենք, տեղադրեք վանդակները, որքան ձեզ հարկավոր է: Այստեղ դուք պետք է տեղադրեք այն ActiveX Control վանդակները ինչպես ցույց է տրված հետևյալ նկարը.

2. Դրանից հետո սեղմեք ալտ + F11 ստեղները միաժամանակ բացելու համար Microsoft Visual Basic հավելվածների համար պատուհան.

3. Բացման մեջ Microsoft Visual Basic հավելվածների համար պատուհանը, սեղմեք Տեղադրել > Դասի մոդուլ.

4. Դասի անունը փոխել այն ClsChk մեջ (Անուն) տուփը Հատկություններ պատուհանը, այնուհետև պատճենեք և կպցրեք ստորև նշված VBA կոդը համապատասխան փաստաթղթում Կոդ պատուհան Տեսեք,

VBA կոդ 1. Ամեն անգամ ընտրեք միայն մեկ վանդակում

Option Explicit
Public WithEvents Chk As MSForms.CheckBox
Private Sub Chk_Click()
Call SelOneCheckBox(Chk)
End Sub

Sub SelOneCheckBox(Target As Object)
Dim xObj As Object
Dim I As String
Dim n As Integer
If Target.Object.Value = True Then

    I = Right(Target.Name, Len(Target.Name) - 8)
    For n = 1 To ActiveSheet.OLEObjects.Count
      If n <> Int(I) Then
        Set xObj = ActiveSheet.OLEObjects.Item(n)
        xObj.Object.Value = False
        xObj.Object.Enabled = False
      End If
    Next
Else
    I = Right(Target.Name, Len(Target.Name) - 8)
    For n = 1 To ActiveSheet.OLEObjects.Count
      If n <> Int(I) Then
        Set xObj = ActiveSheet.OLEObjects.Item(n)
        xObj.Object.Enabled = True
      End If
    Next
End If
End Sub

5. Այժմ կտտացրեք Տեղադրել > Մոդուլներ, ապա պատճենեք և տեղադրեք ներքևի VBA կոդը ՝ Մոդուլներ պատուհան.

VBA կոդ 2. Ամեն անգամ ընտրեք միայն մեկ վանդակում

Dim xCollection As New Collection
Public Sub ClsChk_Init()
Dim xSht As Worksheet
Dim xObj As Object
Dim xChk As ClsChk
   Set xSht = ActiveSheet
   Set xCollection = Nothing
    For Each xObj In xSht.OLEObjects
        If xObj.Name Like "CheckBox**" Then
            Set xChk = New ClsChk
            Set xChk.Chk = CallByName(xSht, xObj.Name, VbGet)
            xCollection.Add xChk
        End If
    Next
    Set xChk = Nothing
End Sub

6. Սեղմեք F5 ծածկագիրը գործելու համար:

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

ՆշումԵթե ​​ստուգման տուփի խմբին ավելացվեց նոր նշման վանդակը, խնդրում ենք կրկին գործարկել VBA կոդը ՝ բոլոր վանդակները կրկին ակտիվացնելու համար: Նշման տուփից ջնջելով վանդակը, անհրաժեշտ է նաև կրկնել կոդը:


Rուրախ հոդվածներ:

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

🤖 Kutools AI օգնականՀեղափոխություն կատարել տվյալների վերլուծության հիման վրա՝ Խելացի կատարում   |  Ստեղծեք ծածկագիր  |  Ստեղծեք հատուկ բանաձևեր  |  Վերլուծել տվյալները և ստեղծել գծապատկերներ  |  Invoke Kutools-ի գործառույթները...
Հանրաճանաչ հատկություններ: Գտեք, ընդգծեք կամ նույնականացրեք կրկնօրինակները   |  Deleteնջել դատարկ շարքերը   |  Միավորել սյունակները կամ բջիջները՝ առանց տվյալների կորստի   |   Կլոր առանց բանաձևի ...
Super Փնտրել: Բազմաթիվ չափանիշների VLookup    Բազմակի արժեք VLookup  |   VLookup բազմաթիվ թերթերում   |   Fuzzy Փնտրել ....
Ընդլայնված բացվող ցուցակ: Արագ ստեղծեք բացվող ցուցակը   |  Կախված բացվող ցուցակ   |  Բազմակի ընտրություն Drop Down ցուցակ ....
Սյունակի կառավարիչ: Ավելացրեք որոշակի քանակությամբ սյունակներ  |  Տեղափոխել սյունակները  |  Փոխարկել թաքնված սյունակների տեսանելիության կարգավիճակը  |  Համեմատեք միջակայքերը և սյունակները ...
Առանձնահատկություններ: Ցանցի կենտրոնացում   |  Դիզայնի տեսք   |   Մեծ Formula Bar    Աշխատանքային գրքույկի և թերթիկների կառավարիչ   |  Ռեսուրսների գրադարան (Ավտոմատ տեքստ)   |  Ամսաթիվ ընտրող   |  Միավորել աշխատանքային թերթերը   |  Գաղտնագրել/գաղտնազերծել բջիջները    Ուղարկեք նամակներ ըստ ցանկի   |  Սուպեր զտիչ   |   Հատուկ զտիչ (զտել թավ/շեղ/շեղված...) ...
Լավագույն 15 գործիքների հավաքածու12 Տեքստ Գործիքներ (Ավելացրեք տեքստ, Հեռացնել նիշերը, ...)   |   50+ Աղյուսակ Տեսակներ (Գանտի աղյուսակը, ...)   |   40+ Գործնական Բանաձեւեր (Հաշվարկել տարիքը ՝ ելնելով ծննդյան տարեդարձից, ...)   |   19 միացում Գործիքներ (Տեղադրեք QR կոդ, Տեղադրեք նկար ուղուց, ...)   |   12 Փոխարկում Գործիքներ (Բառեր համարներ, Արտարժույթի փոխակերպումը, ...)   |   7 Միաձուլում և պառակտում Գործիքներ (Ընդլայնված կոմբինատ տողեր, Պառակտված բջիջներ, ...)   |   ... եւ ավելին

Լրացրեք ձեր Excel-ի հմտությունները Kutools-ի հետ Excel-ի համար և փորձեք արդյունավետությունը, ինչպես երբեք: Kutools-ը Excel-ի համար առաջարկում է ավելի քան 300 առաջադեմ առանձնահատկություններ՝ արտադրողականությունը բարձրացնելու և ժամանակ խնայելու համար:  Սեղմեք այստեղ՝ Ձեզ ամենաշատ անհրաժեշտ հատկանիշը ստանալու համար...


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

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