Namig: drugi jeziki so prevedeni v Google. Lahko obiščete English različico te povezave.
Vpiši se
x
or
x
x
Registracija
x

or

Kako samodejno razvrstite datum, ko datum vnesete ali spremenite v programu Excel?

V Excelu, Razvrščanje funkcija vam lahko pomaga, da razvrstite datum po naraščajočem ali padajočem vrstnem redu, kot je potrebno. Ampak to ni dinamično, če ste uredili datum in nato dodali nov datum, ga boste morali ponovno razvrstiti. Ali imate kakšne dobre in hitre načine za samodejno razvrščanje datuma, ko vsakič vnesete nov datum v preglednico?

Datum samodejnega razvrščanja, ko je datum vnesen ali spremenjen s formulo

Datum za samodejno razvrščanje, ko datum vnesete ali spremenite s kodo VBA


puščica modra desno mehurček Datum samodejnega razvrščanja, ko je datum vnesen ali spremenjen s formulo


Na primer, prvotni datum v stolpcu A, lahko naslednja formula pomaga, da samodejno razvrstite datum ali druge nize besedila v novem stolpcu pomočnika, ki temelji na stolpcu, ki ga želite razvrstiti, in storite naslednje:

1. Vnesite to formulo:

=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,"<="&$A$2:$A$15),0)) v prazno celico poleg stolpca z datumom, C2, na primer, in nato pritisnite Ctrl + Shift + Enter skupaj, in dobili boste zaporedje številk, nato pa povlecite ročico za polnjenje navzdol do celic, ki jih želite uporabiti, glejte sliko zaslona:

Opombe: V zgornji formuli: A2: A15 je prvotno obdobje, ki ga želite samodejno razvrstiti.

doc autosort po datumu 1

2. Nato formatirajte številke kot obliko datuma s klikom Kratek datum Iz splošno spustni seznam pod Domov kartico, si oglejte sliko zaslona:

doc autosort po datumu 2

3. Potem so bile zaporedne številke pretvorjene v obliko datuma, prvotni datum pa je bil tudi razvrščen, glejte sliko zaslona:

doc autosort po datumu 3

4. Od zdaj naprej, ko vnesete nov datum ali spremenite datum v stolpcu A, bo datum v stolpcu C samodejno razvrščen po naraščajočem vrstnem redu, glejte sliko za posnetek zaslona:

doc autosort po datumu 4


puščica modra desno mehurček Datum za samodejno razvrščanje, ko datum vnesete ali spremenite s kodo VBA

Naslednja VBA koda vam lahko pomaga, da samodejno razvrstite datum v prvotnem stolpcu, ko vnesete nov datum ali spremenite datum, ko ga potrebujete.

1. Pojdite na delovni list, ki ga želite samodejno razvrstiti, ko vnesete ali spremenite datum.

2. Z desno tipko kliknite zavihek stanja in izberite Ogled kode iz kontekstnega menija, v popped out Microsoft Visual Basic za aplikacije okno, kopirajte in prilepite naslednjo kodo v prazno Moduli okno, si oglejte sliko zaslona:

VBA koda: samodejno razvrščanje, ko datum vnesete ali spremenite:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160606
    On Error Resume Next
    If Application.Intersect(Target, Application.Columns(1)) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    Range("A1").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
                                        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

doc autosort po datumu 6

Opombe: V zgornji kodi se vneseni datum samodejno razvrsti v stolpec A, ki ga lahko spremenite A1 in A2 na svoje celice, kot jih potrebujete.

3. Od zdaj naprej, ko vnesete datum v stolpec A, bo datum samodejno sortiran po naraščajočem datumu.



Priporočena orodja za produktivnost za Excel

Kutools za Excel vam pomaga, da vedno končate delo pred časom in izstopite iz množice

  • Več kot zmogljive napredne funkcije 300, zasnovane za 1500 delovne scenarije, ki povečujejo produktivnost z 70%, vam dajejo več časa za skrb za družino in uživanje v življenju.
  • Ne potrebujete več pomnilniških formul in VBA kod, od zdaj naprej pa dajate svojim možganom počitek.
  • Postanite strokovnjak za Excel v minutah 3, zapletene in ponavljajoče se operacije lahko opravite v nekaj sekundah,
  • Vsak dan zmanjšajte število operacij tipkovnice in miške, zdaj se poslovite od poklicnih bolezni.
  • 110,000 visoko učinkovite ljudi in 300 + svetovno priznanih podjetij izbiro.
  • Brezplačna preizkusna različica 60 dneva. 60-dnevno jamstvo vračila denarja. 2 let brezplačne nadgradnje in podpore.

Prinaša kartično brskanje in urejanje za Microsoft Office, veliko močnejši od zavihkov brskalnika

  • Office Tab je namenjen za Word, Excel, PowerPoint in druge Office aplikacije: Založnik, Dostop, Visio in Projekt.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Z 50% poveča vašo produktivnost in vsak dan zmanjša na stotine klikov z miško!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Ross · 2 months ago
    With the VBA code, I have copy and pasted the above but wish for the dates in column F to be the values by which the data is sorted. I've changed the range values to F2 and F3500 (the size of the spreadsheet where row 1 is titles), but it still sorts by the dates in column A. Can somebody help me please?
    • To post as a guest, your comment is unpublished.
      skyyang · 1 months ago
      Hello, Ross,
      When applying the code to column F, you should change some references to your need as below code:
      Private Sub Worksheet_Change(ByVal Target As Range)
      'Updateby Extendoffice 20160606
      On Error Resume Next
      If Application.Intersect(Target, Application.Columns(6)) Is Nothing Then Exit Sub
      If Target.Count > 1 Then Exit Sub
      Range("F1").Sort Key1:=Range("F2"), Order1:=xlAscending, Header:=xlYes, _
      OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
      End Sub

      Please try, hope it can help you!
  • To post as a guest, your comment is unpublished.
    Hector · 3 months ago
    Is there a particular formula to keep the cells following the sorted date? It would be nice to organize by date but keep the entire row of information. Any help would be much appreciated.
  • To post as a guest, your comment is unpublished.
    Robert Smith · 8 months ago
    I mad a checkbook register and it works but I want to figure out how to make my entry’s to go into date order. Any help would be appreciated. I’m still learning excel.
  • To post as a guest, your comment is unpublished.
    KC · 1 years ago
    In addition to the duplicate dates, is there also a way to include multiple columns of data when it sorts? I need it to include multiple columns and sort them all together with the expiration dates.
  • To post as a guest, your comment is unpublished.
    Bo · 1 years ago
    how can I do this same sorting calculation but from newest date to oldest? Currently it is Oldest to Newest. Flipping the < sign isn't enough and beyond that I don't have a strong enough understanding of what it is doing. Also I think what may be happening is excel automatically works top to bottom causing difficulties.
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Bo,

      To auto sort the date from newest to oldest, you just need to change the <= to >= in the above formula as follows:
      =INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,">="&$A$2:$A$15),0))
      After inserting this formula, please remember to press Ctrl + Shift + Enter keys together to get the correct result.
      Please try it.