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

 Ինչպե՞ս ավտոմատ կերպով գործարկել մակրոը, երբ բջիջների բանաձևի արդյունքը փոխվում է:

Ենթադրելով, որ ես ունեմ բանաձևերի ցուցակ, որը հիմնված է սյունակում A և B սյունակում, ինչպես ցույց է տրված հետևյալ նկարը. Կա՞ որևէ լավ գաղափար Excel- ում այս աշխատանքը լուծելու համար:

Ավտոմատ գործարկել մակրոը, երբ բջջային բանաձևի արդյունքը փոխվում է VBA կոդի հետ


Ավտոմատ գործարկել մակրոը, երբ բջջային բանաձևի արդյունքը փոխվում է VBA կոդի հետ

Հետևյալ VBA կոդը կարող է օգնել ձեզ ավտոմատ կերպով իրականացնել որոշակի ծածկագիր, երբ բանաձևի արդյունքի բջիջը փոխվի, խնդրում ենք արեք հետևյալ կերպ.

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

VBA կոդ. Ավտոմատ գործարկել մակրոը, երբ բջիջների բանաձևի արդյունքը փոխվում է.

Private Sub Worksheet_Calculate()
'Updateby Extendoffice
    Dim Xrg As Range
    Set Xrg = Range("C2:C8")
    If Not Intersect(Xrg, Range("C2:C8")) Is Nothing Then
    Macro1
    End If
End Sub

ՆշումՎերոհիշյալ ծածկագրում C2: C8 բանաձևի բջիջների շարք է, որը ցանկանում եք օգտագործելմակո 1 մակրոի անվանումն է, որը ցանկանում եք ավտոմատ կերպով գործարկել: Խնդրում եմ փոխեք այն ձեր կարիքի վրա:

2, Ապա պահեք և փակեք այս կոդի պատուհանը, այժմ, երբ A2: B8 տիրույթի տվյալները փոխվեն, բանաձևի արդյունքի փոփոխության պատճառ դառնալով, ձեր հատուկ մակրո ծածկագիրը միանգամից գործարկվում է:


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

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 ներքևում
Տեսակավորել մեկնաբանությունները ըստ
մեկնաբանություններ (10)
Դեռևս գնահատականներ չկան: Եղիր առաջինը, ով կգնահատի:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Շատ շնորհակալություն! Սա իսկապես օգնեց ինձ դուրս գալ:
Կա՞ որևէ մեթոդ փոխված բջիջի հասցեն առբերելու համար (այս օրինակում C սյունակով բանաձևով):
Thanks.
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ո՞րն է պայմանի իմաստը: Միշտ ճշմարիտ կվերադառնա... այլ կերպ ասած՝ կաշխատի առանց դրա: Սա նաև գործում է, երբ թերթի որևէ բջիջ փոխում է արժեքը:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Այսպիսով, ինչ է իմ մակրո անունը: որտեղ կարող եմ գտնել իմ մակրո անունը:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև, Չենկ,
Մակրո անունը այն մակրո կոդը է, որը դուք տեղադրել եք Excel ֆայլում, և դուք պարզապես պետք է վերը նշված կոդի Macro1-ը փոխեք ձեր սեփականի:
Օրինակ, ես այստեղ կոդ եմ տեղադրում, և մակրո անունը հետևյալն է. ColorCompanyDuplicates

Ենթ ColorCompanyDuplicates ()
― Թարմացնելով Extendoffice 20160704
Dim xRg որպես տիրույթ
Dim xTxt որպես տող
Dim xCell-ը որպես տիրույթ
Dim xChar որպես լար
Dim xCellPre As Range
Dim xCIndex այնքան երկար
Dim xCol As Collection
Dim I As Long
Ս.թ. սխալի Ռեզյումե Next
Եթե ​​ActiveWindow.RangeSelection.Count > 1 Ապա
xTxt = ActiveWindow.RangeSelection.AddressLocal
Ուրիշ
xTxt = ActiveSheet.UsedRange.AddressLocal
Վերջ: Եթե
Սահմանել xRg = Application.InputBox («խնդրում ենք ընտրել տվյալների տիրույթը.», «Kutools for Excel», xTxt, , , , , 8)
Եթե ​​xRg-ը ոչինչ է, ապա դուրս եկեք Sub
xCIndex = 2
Սահմանել xCol = Նոր հավաքածու
Յուրաքանչյուր xCell-ի համար xRg-ում
Ս.թ. սխալի Ռեզյումե Next
xCol.Add xCell, xCell.Text
Եթե ​​Սխալ.Թիվ = 457 Ապա
xCIndex = xCIndex + 1
Սահմանել xCellPre = xCol (xCell.Text)
Եթե ​​xCellPre.Interior.ColorIndex = xlNone Ապա xCellPre.Interior.ColorIndex = xCIndex
xCell.Interior.ColorIndex = xCellPre.Interior.ColorIndex
ElseIf Err.Number = 9 Ապա
MsgBox «Չափազանց շատ կրկնօրինակ ընկերություններ», vbCritical, «Kutools for Excel»
Ելք ենթ
Վերջ: Եթե
Սխալի դեպքում GoTo 0
հաջորդ
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
կներեք, դա չի աշխատում, այն աշխատում է, եթե ես տվյալները ձեռքով տեղադրեմ: բայց ես ուզում եմ այն ​​ավտոմատ կերպով աշխատել, bcz, որ իմ տվյալները թարմացվում են rand calcaulate-ով
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
«Set Xrg = Range («C2:C8»)
Եթե ​​ոչ խաչմերուկ (Xrg, Range ("C2:C8")) Այն ժամանակ ոչինչ չէ"
այս պայմանը ՄԻՇՏ հանդիպում է....
Իմաստալի ???
Կամ կա՞ ինչ-որ բան, որը ես չհասկացա:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ճիշտ է, դուք լուծե՞լ եք այս խնդիրը, և կարող եք կիսվել ինձ համար, խնդրում եմ:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն տղերք,
Ես օգտագործել եմ հետևյալ կոդը այս խնդրի համար, հուսով եմ, որ այն կօգնի ինչ-որ մեկին.

Մասնավոր ենթաթերթ_Calculate()
Ստատիկ հին արժեք
If Range ("MyNamedRange") <> oldValue Այնուհետեւ
Code Here
oldValue = Range ("MyNamedRange"). Արժեք
Վերջ: Եթե
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն տղերք,
Ստորև բերված է կոդը, և ես ուզում եմ կողպել A2 և A3 բջիջները այն բանից հետո, երբ A1 բջիջը (A1 = B1+C1) փոխվում է արդյունքների փոփոխության մեջ՝ B1 կամ C1 կամ երկուսն էլ: Բայց դա չի ստացվում։ Ինչ-որ մեկը կարո՞ղ է օգնել այդ հարցում, խնդրում եմ:

Մասնավոր ենթաթերթ_Calculate()

Dim sPass
sPass = «123»
Dim rng As Range
Սահմանել rng = [A2:A3]
If Not Intersect(rng, [A1]) Այն ժամանակ ոչինչ է
ActiveSheet- ով
Ապապաշտպանել գաղտնաբառը:=sPass
.Cells.Locked = False
Ստատիկ հին արժեք
If Range ("A1") <> oldValue Այնուհետեւ
rng.Locked = Ճիշտ է
.Պաշտպանեք գաղտնաբառը:=sPass
oldValue = Շրջանակ ("A1"): Արժեք

Վերջ: Եթե
Վերջ

Վերջ: Եթե
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Hello թիմ,

Ես գիտեմ, որ սա հին թեմա է, բայց ինչպես խառնել այս հաշվարկման մեթոդը և սա. https://www.extendoffice.com/documents/excel/1895-excel-record-date-and-time-when-cell-changes.html?

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

Regards,
Տիագո
Առայժմ ոչ մի մեկնաբանություն չկա
Թողեք ձեր մեկնաբանությունները
Հրապարակում որպես հյուր
×
Գնահատեք այս գրառումը.
0   Անձնավորություններ
Առաջարկվող վայրեր

Հետեւեք մեզ

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