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

Conas sonraí colún a shórtáil trí chliceáil ar cheanntásc in Excel?

Ag ceapadh, tá raon sonraí agam, anois, ba mhaith liom na sonraí a shórtáil in ord ardaitheach nó íslitheach trí chliceáil ar aon cheanntásc colúin chun an pictiúr seo a leanas a thaispeáint. Conas a d’fhéadfá an post seo a réiteach in Excel?

sórtáil doc le cliceáil 1

Sórtáil sonraí trí chliceáil ar cheanntásc an cholúin le cód VBA


mboilgeog cheart gorm saighead Sórtáil sonraí trí chliceáil ar cheanntásc an cholúin le cód VBA

De ghnáth, in Excel, is féidir leat an ghné Sórtáil a chur i bhfeidhm chun na sonraí a shórtáil go tapa agus go héasca, ach, chun sonraí a shórtáil trí chliceáil ar chill amháin, is féidir leis an gcód VBA seo a leanas fabhar a thabhairt duit.

1. Cliceáil ar dheis ar an táb bileog ar mhaith leat sonraí a shórtáil trí chliceáil ar chill, agus 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: Sórtáil sonraí trí chliceáil ar cheanntásc cille nó colúin:

Public blnToggle As Boolean
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim LastColumn As Long, keyColumn As Long, LastRow As Long
Dim SortRange As Range
LastColumn = _
Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
keyColumn = Target.Column
If keyColumn > LastColumn Then Exit Sub
Application.ScreenUpdating = False
Cancel = True
LastRow = Cells(Rows.Count, keyColumn).End(xlUp).Row
Set SortRange = Target.CurrentRegion
blnToggle = Not blnToggle
If blnToggle = True Then
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlAscending, Header:=xlYes
Else
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlDescending, Header:=xlYes
End If
Set SortRange = Nothing
Application.ScreenUpdating = True
End Sub

sórtáil doc le cliceáil 2

2. Agus ansin fuinneog an chóid a shábháil agus a dhúnadh, anois, nuair a chliceálann tú faoi dhó ceanntásc cille nó colúin laistigh den raon sonraí, sórtálfar an colún in ord ardaitheach, má chliceálann tú arís é faoi dhó, sórtálfar an colún ag ísliú ag an am céanna.


Earraí níos gaolmhara:

Conas luach na cille a athrú trí chliceáil ar an gcill?

Conas sonraí a scagadh ach trí ábhar cille a chliceáil in Excel?


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 (9)
Níl rátálacha ar bith fós. Bí ar an gcéad duine a rátáil!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Oibríonn sé ceart go leor chun dul suas, cliceáil faoi dhó ar an 2ú uair mar a dúradh a shíolraigh ní dhéanfaidh aon ní
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ní oibríonn, ní tharlaíonn aon rud, tá a fhios conas modúl a chruthú i vba, rinne sé sin, shábháil agus rud ar bith nuair a chliceáil ar an gceanntásc faoi dhó. Déan é a shocrú le do thoil.
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Ní féidir crackerjack a dhéanamh - ná bí ag obair
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit, Rob, Oibríonn an cód thuas go maith i mo Excel, an féidir leat screenshot a thabhairt d'fhadhb anseo?
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit,
der Code funktioniert auch gut bei mir. Allerdings würde ich gerne die oberen beiden Zeilen nicht mit sortieren, da diese die Überschriften sind.
Wie muss ich dann diesen Code ändern?

Go raibh maith agat!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit a chara,
Seo é an VBA atá uait:

Poiblí blnToggle As Boole
Fo-Bileog Oibre Príobháideach_RoimhDoubleCliceáil _
(Sprioc ByVal Mar Raon, Cealaigh Mar Boole)
'Updateby Extendoffice
Dim LastColumn As Long, KeyColumn As Fada, LastRow As Long
Dim SortRange As Range
Colún Last = _
Cells.Find(Cad:="*", Tar éis:=Raon("A1"), _
SearchOrder:=xlByColumns, SearchDirection:=xlRoimhe seo).Colún
keyColumn = Target.Column
Má tá eochairColumn > LastColumn Ansin Scoir Fo
Application.ScreenUpdating = Bréagach
Cealaigh = Fíor
LastRow = Cealla(Rows.Count, keyColumn).Deireadh(xlUp).Row
Ar Lean Earráid Aghaidh
Socraigh SortRange = Target.CurrentRegion
Dim i Chomh fada
i = 2
Socraigh SortRange = SortRange.Offset(i, 0)
Socraigh SortRange = SortRange.Resize(SortRange.Rows.Count - i, SortRange.Columns.Count)
blnToggle = Ní blnToggle
Má blnToggle = Fíor Ansin
SortRange.Sort _
Eochair1:=Cealla(2, Colún eochrach), Ordú1:=xlAscending, Ceanntásc:=xlUimh
Eile
SortRange.Sort _
Eochair1:=Cealla(2, Colún na heochrach), Ordú1:=xl Ag Ísliú, Ceanntásc:=xlUimh
Deireadh Má
Socraigh SortRange = Ní dhéanfaidh aon ní
Feidhmchlár.ScreenUpdating = Fíor
Fo Deireadh


Má tá ceanntásca 3 shraith agat, níl le déanamh ach "i = 2" a athrú go "i = 3" sa VBA. Tá súil go gcabhraíonn sé. Bíodh lá maith agat.

Le meas,
Mandy
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit Mandy/gach duine,

An féidir do chód a athrú le sórtáil ach amháin nuair a dhéantar cliceáil faoi dhó ar na ceanntásca seachas aon chill?

Go raibh míle maith agat go mór!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit,
Chun d’fhadhb a réiteach, cuir an cód thíos i bhfeidhm le do thoil:
Public blnToggle As Boolean
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim LastColumn As Long, keyColumn As Long, LastRow As Long
Dim SortRange As Range
Dim xAddress As String
Dim xRgI As Range
xAddress = "A1:E2" 'The headers
Set xRgI = Intersect(Range(xAddress), Target)
If xRgI Is Nothing Then Exit Sub
LastColumn = _
Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
keyColumn = Target.Column
If keyColumn > LastColumn Then Exit Sub
Application.ScreenUpdating = False
Cancel = True
LastRow = Cells(Rows.Count, keyColumn).End(xlUp).Row
On Error Resume Next
Set SortRange = Target.CurrentRegion
Dim i As Long
i = 2
Set SortRange = SortRange.Offset(i, 0)
Set SortRange = SortRange.Resize(SortRange.Rows.Count - i, SortRange.Columns.Count)
blnToggle = Not blnToggle
If blnToggle = True Then
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlAscending, Header:=xlNo
Else
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlDescending, Header:=xlNo
End If
Set SortRange = Nothing
Application.ScreenUpdating = True
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ú
This works perfectly! Thank you very much skyyang!
Níl aon tráchtanna curtha suas anseo go fóill
Fág do thuairimí i mBéarla le do thoil
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