Liosta anuas le ilroghnú

Tá an liosta anuas clasaiceach i mbileog Excel iontach, ach ní cheadaíonn sé ach rogha amháin a roghnú ón sraith a chuirtear i láthair. Uaireanta is é seo go díreach cad ba mhaith leat, ach tá cásanna nuair is gá an t-úsáideoir a bheith in ann a roghnú roinnt eilimintí ón liosta.

Breathnaímid ar roinnt feidhmeanna tipiciúil de liosta ilroghnaithe den sórt sin.

Rogha 1. Cothrománach

Roghnaíonn an t-úsáideoir míreanna ón liosta anuas ceann ar cheann, agus tá an chuma orthu ar thaobh na láimhe deise den chill atá á athrú, á liostú go cothrománach go huathoibríoch:

Cruthaítear liostaí anuas i gcealla C2:C5 sa sampla seo ar bhealach caighdeánach, .i

  1. roghnaigh cealla C2:C5
  2. cluaisín nó roghchlár Dáta roghnaigh foireann Bailíochtú Sonraí
  3. sa fhuinneog a osclaíonn, roghnaigh rogha liosta agus sonraigh mar raon Foinse cealla le sonraí foinse don liosta A1:A8

Ansin ní mór duit macra a chur leis an modúl bileog, a dhéanfaidh an príomhobair go léir, ie cuir luachanna roghnaithe ar dheis na gcealla glasa. Chun seo a dhéanamh, cliceáil ar dheis ar an táb bileog le liostaí anuas agus roghnaigh an t-ordú Foinse cód. Greamaigh an cód seo a leanas isteach i bhfuinneog an eagarthóra Visual Basic a osclaíonn:

Fo-Bileog Oibre Príobháideach_Athrú(Sprioc ByVal Mar Raon) Ar Earráid Lean ar Aghaidh Mura dtrasnaíonn (Sprioc, Raon ("C2:C5")) Nach bhfuil Rud ar bith Agus Target.Cells.Count = 1 Ansin Application.EnableEvents = Bréagach Má tá Len(Target.Offset) (0, 1)) = 0 Ansin Target.Offset(0, 1) = Sprioc Eile Target.End(xlToRight).Fritháireamh(0, 1) = Spriocdeireadh Más Sprioc.ClearContents Application.EnableEvents = Fíorchríoch Más Deireadh Fo  

Más gá, cuir do cheann féin in ionad raon íogair na liostaí anuas C2:C5 sa dara líne den chód seo.

Rogha 2. Ingearach

Mar an gcéanna leis an leagan roimhe seo, ach ní chuirtear na luachanna roghnaithe nua ar dheis, ach go dtí an bun:

Déantar é ar an mbealach céanna, ach athraíonn macrachód an láimhseála beagán:

Fo-Bileog Oibre Príobháideach_Athrú(Sprioc ByVal Mar Raon) Ar Earráid Lean ar Aghaidh Mura dtrasnaíonn (Sprioc, Raon ("C2:F2")) Nach bhfuil Rud ar bith Agus Target.Cells.Count = 1 Ansin Application.EnableEvents = Bréagach Má tá Len(Target.Offset) (1, 0)) = 0 Ansin Target.Offset(1, 0) = Sprioc Eile Target.End(xlDown).Fritháireamh(1, 0) = Spriocdeireadh Más Sprioc.ClearContents Application.EnableEvents = Fíor Deiridh Más Deireadh Fo  

Arís, más gá, cuir do cheann féin in ionad raon íogair na liostaí anuas C2:F2 sa dara líne den chód seo.

Rogha 3. Le carnadh sa chill chéanna

Sa rogha seo, tarlaíonn an carnadh sa chill chéanna ina bhfuil an liosta anuas suite. Tá na heilimintí roghnaithe deighilte le haon charachtar tugtha (mar shampla, camóg):

Cruthaítear liostaí anuas i gcealla glasa ar bhealach iomlán caighdeánach, mar a rinneadh sna modhanna roimhe seo. Déantar an obair ar fad, arís, le macra i modúl na mbileog:

Fo-Bileog Oibre Príobháideach_Athrú(Sprioc ByVal Mar Raon) Ar Earráid Lean ar Aghaidh Mura dtrasnaíonn (Sprioc, Raon ("C2:C5")) Nach bhfuil Rud ar bith agus Target.Cells.Count = 1 Ansin Application.EnableEvents = False newVal = Sprioc Application.Undo oldval = Sprioc Má Len(oldval) <> 0 Agus oldval <> newVal Ansin Sprioc = Sprioc & "," & newVal Eile Sprioc = newVal Deireadh Má Má tá Len(newVal) = 0 Ansin Target.ClearContents Application.EnableEvents = Fíor Deireadh Más Críoch Fo  

Más mian leat, is féidir leat do chuid féin a chur in ionad an charachtair deighilteoir (camóg) sa 9ú líne cód (mar shampla, spás nó leathstad).

  • Conas liosta anuas simplí a chruthú i gcill leatháin excel
  • Liosta anuas leis an ábhar
  • Liosta anuas le roghanna in easnamh curtha leis
  • Cad is macraí ann, conas iad a úsáid, cá háit le cód macra a chur isteach in Visual Basic

Leave a Reply