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

 Conas macra a reáchtáil bunaithe ar luach cille in Excel?

Ag ceapadh, tá macra-chóid iolracha agam i mo leabhar oibre, agus anois, ba mhaith liom na cóid seo a reáchtáil bunaithe ar luach na cille. An t-alt seo, labhróidh mé faoi roinnt cásanna a d’fhéadfadh a bheith agat i do chuid oibre laethúla agus tú ag úsáid Excel.

Rith nó spreag macra má tá luach cille níos mó nó níos lú ná luach sonrach le cód VBA

Rith nó spreag macra más ionann luach cille agus téacs sonrach le cód VBA


mboilgeog cheart gorm saighead Rith nó spreag macra má tá luach cille níos mó nó níos lú ná luach sonrach le cód VBA

Mar shampla, má tá an luach i gcill A1 idir 10 agus 50, rith macra1, agus má tá an luach níos mó ná 50, rith macra2. Chun an post seo a réiteach in Excel, cuir an cód VBA seo a leanas i bhfeidhm.

1. Cliceáil ar dheis ar an táb bileog a theastaíonn uait an macra a fhorghníomhú bunaithe ar luach cille, agus ansin roghnaigh Féach an cód ón roghchlár comhthéacs, agus san oscailt Microsoft Visual Basic d’iarratais an cód seo a leanas a fhuinneogú, a chóipeáil agus a ghreamú isteach sa Mhodúl bán:

Cód VBA: Rith macra má tá luach cille níos mó nó níos lú ná:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If IsNumeric(Target) And Target.Address = "$A$1" Then
        Select Case Target.Value
        Case 10 To 50: Macro1
        Case Is > 50: Macro2
        End Select
    End If
End Sub

macra reáchtáil doc bunaithe ar luach cille 1

nótaí: Sa chód thuas:

A1 an cill í ina bhfuil an luach sonrach ar mhaith leat an macra a rith bunaithe uirthi;

Cás 10 go 50: Macra1: ciallaíonn sé má tá an luach idir 10 agus 50, rith Macro1;

Cás Is> 50: Macro2: ciallaíonn sé má tá an luach níos mó ná 50, rith Macro2.

Athraigh macra-ainmneacha agus critéir tráchtais le do riachtanas, agus is féidir leat níos mó critéar a chur leis tar éis an Cás script.

2. Ansin sábháil agus dún an fhuinneog cód seo, anois, nuair a bheidh an luach a iontrálann tú idir 10 agus 50 i gcill A1, spreagfar Macro1, más mó an luach a iontráladh ná 50, déantar Macro2 a fhorghníomhú.


mboilgeog cheart gorm saighead Rith nó spreag macra más ionann luach cille agus téacs sonrach le cód VBA

Más mian leat an macra a spreagadh bunaithe ar théacs ar leith i gcill, mar shampla, chun an macra1 a rith má iontráiltear an téacs “Scrios”, agus rith macra2 má chlóscríobtar téacs “Ionsáigh”. Féadann an cód seo a leanas fabhar a thabhairt duit.

1. Cliceáil ar dheis ar an mbileog a theastaíonn uait an macra a fhorghníomhú bunaithe ar luach na cille, agus ansin roghnaigh Féach an cód ón roghchlár comhthéacs, agus san oscailt Microsoft Visual Basic d’iarratais an cód seo a leanas a fhuinneogú, a chóipeáil agus a ghreamú isteach sa Mhodúl bán:

Cód VBA: Rith an macra más téacs sonrach é luach cille

Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "Delete" Then
 Call Macro1
End If
If target.Value = "Insert" Then
Call Macro2
End If
End Sub 

macra reáchtáil doc bunaithe ar luach cille 2

nótaí: Sa chód thuas, “Scrios"Agus"Ionsáigh"Is iad na téacsanna cille ar mhaith leat macraí a reáchtáil bunaithe orthu, agus Macra1 agus Macra2 an bhfuil na macraí is mian leat a fhorghníomhú bunaithe ar théacs. Athraigh iad le do riachtanas le do thoil.

2. Ansin sábháil an cód seo agus dún an fhuinneog, anois, nuair a iontrálann tú an téacs “Scrios” i gcill A1, spreagtar macra1, má iontráiltear an téacs “Ionsáigh”, forghníomhófar macra2.


Earraí gaolmhara:

Conas macra a rith nuair a athraíonn luach cille in Excel?

Conas macra a reáchtáil go huathoibríoch sula ndéantar é a phriontáil in Excel?

Conas macra a reáchtáil bunaithe ar luach a roghnaíodh ón liosta anuas in Excel?

Conas macra a reáchtáil trí hipearnasc a chliceáil in Excel?

Conas macra a reáchtáil nuair a roghnaítear bileog ó leabhar oibre?


Na hUirlisí Táirgiúlachta Oifige is Fearr

Réitíonn Kutools for Excel an chuid is mó de do chuid Fadhbanna, agus Méadaíonn sé do Tháirgiúlacht 80%

  • Athúsáid: Cuir isteach go tapa foirmlí casta, cairteacha agus aon rud a d'úsáid tú roimhe seo; Cealla a Chriptiú le pasfhocal; Cruthaigh Liosta Ríomhphoist agus seol ríomhphoist ...
  • Barra Foirmle Super (cuir línte iolracha téacs agus foirmle in eagar go héasca); Leagan Amach Léitheoireachta (líon mór cealla a léamh agus a chur in eagar go héasca); Greamaigh go dtí an Raon Scagtha...
  • Cumaisc Cealla / Sraitheanna / Colúin gan Sonraí a chailleadh; Ábhar Cealla Scoilt; Comhcheangail Sraitheanna / Colúin Dúblacha... Cill Dúblach a Chosc; Déan comparáid idir Ranganna...
  • Roghnaigh Dúblach nó Uathúil Sraitheanna; Roghnaigh Blank Rows (tá na cealla uile folamh); Aimsigh Super agus Fuzzy Aimsigh i go leor Leabhar Oibre; Roghnaigh go randamach ...
  • Cóip Díreach Cealla Il gan tagairt fhoirmle a athrú; Tagairtí Cruthaigh Auto chuig Bileoga Il; Cuir Urchair isteach, Boscaí Seiceála agus go leor eile ...
  • Sliocht Téacs, Cuir Téacs leis, Bain de réir Poist, Bain Spás; Subtotals Paging a chruthú agus a phriontáil; Tiontaigh Idir Ábhar Cealla agus Tráchtanna...
  • Scagaire Super (scéimeanna scagaire a shábháil agus a chur i bhfeidhm ar bhileoga eile); Ard-Sórtáil de réir míosa / seachtaine / lae, minicíocht agus níos mó; Scagaire Speisialta le cló trom, iodálach ...
  • Comhcheangail Leabhair Oibre agus Bileoga Oibre; Cumaisc Táblaí bunaithe ar eochaircholúin; Roinn Sonraí i Ilbhileoga; Baisc Tiontaigh xls, xlsx agus PDF...
  • Níos mó ná 300 gné chumhachtach. Tacaíonn Office / Excel 2007-2021 agus 365. Tacaíonn sé le gach teanga. Imscaradh éasca i d'fhiontar nó d'eagraíocht. Gnéithe iomlána triail saor in aisce 30-lá. Ráthaíocht airgid ar ais 60-lá.
cluaisín kte 201905

Tugann Tab Oifige comhéadan Tabbed chuig Office, agus Déan Do Obair i bhfad Níos Éasca

  • Cumasaigh eagarthóireacht agus léamh tabbed i Word, Excel, PowerPoint, Foilsitheoir, Rochtain, Visio agus Tionscadal.
  • Oscail agus cruthaigh cáipéisí iolracha i gcluaisíní nua den fhuinneog chéanna, seachas i bhfuinneoga nua.
  • Méadaíonn do tháirgiúlacht 50%, agus laghdaíonn sé na céadta cad a tharlaíonn nuair luch duit gach lá!
bun officetab
Sórtáil tuairimí de réir
Comments (19)
Rátáil 5 as 5 · rátálacha 1
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, cad faoi más mian leat macra a rith bunaithe ar dhá chill? Tá cill amháin bunaithe ar théacs agus luachanna uimhriúla ag an gcill eile? Ansin ba mhaith leat macra a ghlaoch má thaispeánann an dá chealla go díreach cad atá uait, cosúil le "TÁ" don chéad chill agus 1 don dara cill, más rud é nach dtaispeánfadh bosca pop ag rá "Gan Aimsiú".
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ceanglas:
Bunaithe ar an roghnú
Beidh liosta anuas le haghaidh na dtrí airí seo a leanas den toise chéanna agus atá thíos.
Agus beidh trí chealla díorthaithe ann a dhíorthófar ó na cealla (G46, G47 agus G48)

Cás:
Má roghnaím luach ó liosta anuas lárionad costais , ba cheart luach a roghnú ón liosta anuas lárionad costais (H46) ar chill díorthaithe lárionad costais (K46) agus an dá chill díorthaithe eile (K47 agus k48) a bheith bán.

Mar an gcéanna má roghnaím luach ó liosta anuas an Bhainisteora Buiséid, ba chóir go mbeadh luach roghnaithe ó liosta anuas an bhainisteora Buiséid (H47) agus an dá chill díorthaithe eile (K45 agus k48) bán, cill díorthaithe an bhainisteora buiséid.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Táim ag obair le hanailís ar thorthaí. Sa chás seo, beidh na sonraí san excel cosúil leis an Ainm seo, Fo-ainm , Crád. Anois, ba mhaith liom na huimhreacha pas nó na hiarrthóirí rathúla go léir a fháil ón toradh. Conas is féidir liom é a fháil. Mar gheall ar sin, tá 6 ábhar éagsúil agam agus a gcuid torthaí i mbileog amháin excel. Má theip ar mhac léinn in ábhar amháin ní mac léinn rathúil é. Conas a n-ainm a bhaint sna hábhair go léir.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ceartaigh an dá chód don bhileog oibre chéanna.
AN CHÉAD CÓD OIBRE FOIRFE
Fo-Bileog Oibre Príobháideach_Change (Sprioc ByVal Mar Raon)
Mura Trasnaíonn (Sprioc, Raon ("D1")) An bhfuil Rud ar bith ansin
Roghnaigh Cás Raon ("D1")
Cás "0.5": Leath
Cás "1": Ceann amháin
Cás "1.25": OneTwentyFive
Roghnaigh Roghnaigh
Deireadh Má
Fo Deireadh

AN DARA CÓD NACH BHFUIL AG OBAIR (ceartaigh an ceann thíos)
Fo-athrú Príobháideach (ByVal Target As Range)
Mura Trasnaíonn (Sprioc, Raon ("D2")) An bhfuil Rud ar bith ansin
Roghnaigh Cás Raon ("D2")
Cás "9.53": naoi bpointe cúig trí
Roghnaigh Roghnaigh
Deireadh Má
Fo Deireadh
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Olá, quero fazer o seguinte:
Na Celula A1, assim que estiver preenchida passe for a celula de baixo, no caso A2.
Is féidir iad a úsáid chun an cód barra a bhaint amach do tháirgí cadastra, agus uimhreacha uathoibríocha, agus is féidir iad a úsáid le haghaidh iontrálacha ENTER chun na críche sin.

Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hola, una comhairliúcháin, is féidir leat a fheiceáil go bhfuil tú ag súil le huimhreacha agus líon na macraí
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Gustavo
Chun d’fhadhb a réiteach, cuir an cód seo a leanas i bhfeidhm:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If IsNumeric(Target) And Target.Address = "$A$1" Then
        If Target.Value > 10 And Target.Value < 50 Then
         macro1
         macro2
        End If
    End If
End Sub

Bain triail as, le do thoil, tá súil gur féidir leis cabhrú leat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit,
je souhaiterais appliquér cette macro à mon code. Le problème est que la cellule s’incrémente via une toupie et le code ne reconnais pas le hathrú de valeur de la cellule.
Quand je saisie la valeur manuelement celà fonctionne correctement.

go raibh maith agat roimh ré
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Gilles,
Ba cheart duit a Cnaipe Casadh (Rialú ActiveX) ar dtús, agus ansin ar dheis clcik é, roghnaigh Féach ar an gcód, ansin, cóipeáil agus greamaigh an cód thíos idir na scripteanna reatha,
Dim xWSh As Worksheet
Dim xOL As OLEObject
Dim xRg As Range
Set xWSh = Application.ActiveSheet
Set xOL = xWSh.OLEObjects("SpinButton1") 'The name of the spin button
Set xRg = xWSh.Range(xOL.LinkedCell)
If IsNumeric(xRg) And xRg.Address = "$A$1" Then
        Select Case xRg.Value
        Case 10 To 50: Macro1
        Case Is > 50: Macro2
        End Select
End If

https://www.extendoffice.com/images/stories/comments/comment-skyyang/DOC-RUN-CODE.png

Bain triail as, le do thoil, tá súil gur féidir leis cabhrú leat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hallo!

Táim an-nua do VBA agus bhain mé triail as an réiteach seo le haghaidh bileog excel atá agam. Go bunúsach níl agam ach liosta fada in Excel, áit ar cheart duit i gcolún T clóscríobh Tá nó Níl, agus ba mhaith liom é a dhéanamh, Má chlóscríobh Sea, reáchtáil macra... Bhain mé triail as go leor bealaí éagsúla chun an raon a shainiú ach ní oibríonn aon rud.

Fo-bhileog oibre_change(Sprioc ByVal Mar Raon)

Socraigh sprioc = Raon ("T: T")
If target.Value = "Tá" Ansin
Glaoigh ar Macro1
Deireadh Má

Fo Deireadh

Aibhsíonn mé an fhadhb seo (earráid ama rite- cineál mímheaitseála): Más target.Value = "Tá" Ansin

An féidir le duine ar bith cabhrú?

Maith thú, Isabella
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Westergaard
B'fhéidir gur féidir leis an gcód VBA seo a leanas cabhrú leat: (Nóta: Athraigh ainm an Macra1 chuig do chódainm féin)
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("T:T")) Is Nothing Then
If Target.Value = "Yes" Then
      Call Macro1
    End If
    End If
End Sub

Bain triail as, le do thoil, tá súil gur féidir leis cabhrú leat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Go raibh míle maith agat! Oibríonn sé anois :)
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Haigh,
Conas an bonn cód seo a mhodhnú ar thoradh ríomh foirmle cille A1
Fo-Bhileog Oibre_ Ríomh()
Cabhrú le do thoil

Fo-bhileog Oibre Príobháideach_Athrú (Sprioc ByVal Mar Excel.Range)
Má tá Target.Cells.Count > 1 Ansin Scoir Fo
If IsNumeric(Target) Agus Target.Address = "$A$1" Ansin
Roghnaigh Cás Target.Value
Cás 10 go 50: Macra1
Cás Is> 50: Macro2
Roghnaigh Roghnaigh
Deireadh Má
Fo Deireadh
Rátáil 5 as 5
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, FG,
Le go n-oibreoidh an cód i gcealla foirmle, cuir an cód thíos i bhfeidhm le do thoil:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
    If IsNumeric(Target) And Target.Address = "$A$1" Then
        Select Case Target.Value
        Case 10 To 50: macro1
        Case Is > 50: macro2
        End Select
    ElseIf (Not Intersect(Range("$A$1"), Target.Dependents) Is Nothing) Then
        Set Rg = Intersect(Range("$A$1"), Target.Dependents)(1)
        Select Case Rg.Value
        Case 10 To 50: macro1
        Case Is > 50: macro2
        End Select
    End If
End Sub

Bain triail as, le do thoil, tá súil gur féidir leis cabhrú leat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ciao spéirbhean. Spero tu possa aiutarmi. Is é seo an clár i vba che basandosi su variazioni di prezzo di una cella (E1), coláisteach in DDE le una piattaforma di trading diborsa, fissa agus prezzi: Massimo, Minimo, Apertura, Chiusura, per poi passare alla riga successiva in base a agus eatraimh temporale impostato all'apertura del foglio elettronico. L’algoritmo da me sviluppato fa si che nelle colonne: “BH” e “BI” vengano visualizzati i prezzi di acquisto e di vendita, ma solo quando soddisfatte le dáta condizioni, altrimenti le celle non restituiscono nessun valore. Quello di cui avrei bisogno è di un avviso sonoro .wav che mi avvisi quando viene restituito un valore, di acquisto o di vendita, in modo di non dover fissare lo schermo per 14 ore giorno. Chun an cód "SoundMe()" a chur isteach agus a chur isteach ar líne, is féidir é a úsáid chun an clár nua a chur isteach agus a athrú. Pensi che il problema si possa risolvere? Grazie le haghaidh an attenzione
Stefano
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Buongorno,
ho provato il listato che permette di richiamare 2 macra al cambio del valore di una cella, se quel cambio deriva da una funzione “se” non funziona, se digito agus valori (vero o falso) funziona.

Tar posso ovviare?
Sa deireadh tháinig potrei evitare di utilizzare il condizionale sulla cella e far verificare al listato se la cella che deve far avviare le macro è compilata o meno?

grazie
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Buongorno,
vorrei eseguire una macro quando una in una cella viene inserito un controllo “más” o se viene inserita una data and non numero.

Is éard atá i gceist leis seo ná A1 inserisco: If(B2=0; vero;falso) agus an macra leggendo vero mi nasconde lo sheet2 altrimenti mo scóip la sheet 2.

Tar posso táille?
Riesco a bhfad funzionare il tutto se inserisco in A1 manualmente un valore (in questo caso vero or falso).

Go raibh maith agat
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Carlo,
Go deimhin is féidir leis an dara cód san Airteagal seo d'fhadhb a réiteach.
nótaí: Ní mór duit ach an téacs a athrú go Fíor agus Bréagach isteach sa chód, agus ainm an chóid a athrú chuig do chuid féin.
Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "True" Then
 Call Macro1
End If
If target.Value = "False" Then
Call Macro2
End If
End Sub 


Bain triail eile as, le do thoil, go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit,

ich bräuchte dafür ein Makro,

ich kann dieses Fadhb nicht alleine lösen, wäre super wenn mir jemand helfen könnte.

In M1 steht die Zahl 5, jetzt soll der Bereich von A83 bis A683 auf die Zahl 5 geprüft werden, sollte zB A111 die Zahl 5 enthalten, dann soll C111 + 1 ( wenn in C111 23 steht dan soll). Genau so wenn in A24 eine 444 steht, dann soll C5 + 444 ( wenn C1 = 444 dann 99).
Immer wenn der Wert mit M1 übereinstimmt, dann soll diese Zelle in Spalte C immer wieder + 1 zählen. Freisin 23 +1 dann 24+1 dann 25 +1 usw usw.


Vielleicht kann mir da jemand helfen,

Míle buíochas roimh ré.

LG Stfan
Níl aon tráchtanna curtha suas anseo go fóill
Fág do chuid tuairimí
Ag postáil mar Aoi
×
Ráta an post seo:
0   Carachtair
Suímh Molta

Lean orainn

Cóipcheart © 2009 - www.extendoffice.com. | Gach ceart ar cosaint. Cumhachtaithe ag ExtendOffice. | léarscáil an tSuímh
Is trádmharcanna nó trádmharcanna cláraithe de chuid Microsoft Corporation sna Stáit Aontaithe agus / nó i dtíortha eile iad lógó Office agus Office.
Cosanta ag Sectigo SSL