IZBORNIK HOME FORUM ACCESS 2003 EXCEL 2003 WORD 2003  .
   
   
HOME
FORUM Win Tips&Tricks
   
KAKO INSTALIRATI
WINDOWS XP ?
Kako instalirati Win XP sa USB STICKA
Kako instalirati WINDOWS 7 ?
Naučite za 15 minuta raditi u Windows XP
Naučite Internet Explorer i Outlook Express
za 15 minuta
Kako kreirati BOOT CD za instalaciju Win95
   
MS OFFICE 2003
MS OFFICE 2007
   
   
HOME NETWORK
tutorijal za mreže
Network Windows 7 - XP
   
ZANIMLJIVI LINKOVI
BROJEVNI SUSTAVI
(DEC, OKT, BIN, HEX )
CMD - Command Prompt
CISCO - CCNA tutoriali
VLSM and SUBNETTING
   
Tutorijali za phpBB forum
JAVASCRIPT
VISUAL BASIC 6.0
AUTOCAD 2007
 
-
MICROSOFT EXCEL 2007 - Kako automatski sortirati podatke u Excelu 2007

Kako automatski sortirati podatke u Excelu 2007
(Automatsko sortiranje nakon unosa u excelu 2007)

Search This Web Site

Adsense sponzor







Kako automatski sortirati promjenjivi popis podataka nakon unosa i pritiska na Enter u Excelu 2007.
 

U ovom primjeru pokazat ću kako možemo sortirati podatke tokom pisanja istih u nekom rasponu podataka naše tablice. Uzmimo za primjer da imamo u stupcu A određeni raspon u koji unosimo podatke. Želimo odmah nakon unosa nekog podatka da nam se svi podaci sortiraju u dotičnom rasponu podataka.

Uočite naš raspon podataka na slici desno. Ovaj raspon podataka u koji unosimo tekst vezan je za A2:A25. Da bi lakše radili i manipulirali sa formulama, funkcijama i Makronaredbama poželjno je ovaj raspon imenovati nekim nazivom. Za detaljnije informacije pogledajte Kako se imenuju podaci. Dakle selektirali smo naše podatke i imenovali ih. 

Adsense sponzor



Automatsko sortiranje teksta pomoću VBA Makronaredbe

Za uspješno sortiranje bilo Ascending ili Descending (uzlazno/silazno) potrebno je VBA Macro kod umetnuti u VBE dotičnog Sheeta (radnog lista) na kojem vršimo automatsko sortiranje dinamičnog popisa podataka. Za uspješno izvođenje makronaredbe potrebno je dozvoliti u Excelu pokretanje Macro-a. Kako se to radi pogledajte na linkovima

- Postavljanje dozvola za izvršavanje Makronaredbe u Excelu 2003 i Excelu 2007 (Enable Macro)

Macro code for automatic sort data in Excel

Kada smo sigurni ad će Excel moći izvršiti Makronaredbe tada otvorite VBE pritiskom kombinacije tipki ALT+F11 i kopirajte ovaj Macro kod ispod u Window Code dotičnog Sheeta na kojem želite vršiti automatsko sortiranje dinamičnog popisa. Snimite Workbook. Vidi sliku iznad.

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Range("Data").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Application.ScreenUpdating = True
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
End Sub

Vratite se na Sheet u kojem vršite automatsko sortiranje podataka pri dinamičnom upisu. Uočite sada što se događa kada upišete neki podataka i pritisnete tipku ENTER. Podaci su se automatski sortirali.

Automatic sort data in dynamic list with VBA Macro Automatsko sortiranje podataka nakon pritiska na tipku Enter  
DOWNLOAD Macro koda iz ovog primjera

Automatsko sortiranje nakon promjene i manualnog unosa podataka

U situaciji da želimo automatski sortirati podatke u stupcima nakon izmjene pojedinog podatka tada možemo isti problem riješiti preko VBA automatskim sortiranjem preko događaja Worksheet_Change

Uočite u VBA makronaredbi da je imenovan raspon podataka bez zaglavlja u stupcima (Header:=xlNo).

Dakle u ovom slučaju imenovani naziv Table_range = $A$2:$B$11

Također uočiteda je sortiranje izvršeno silazno a ako želite uzlazno sortiranje tada promijenite ovaj dio VBA koda;

Order1:=xlDescending izmijenite u Order1:=xlAscending

Ovaj VBA macro kod kopirajte u Sheet vaše Workbook ili klik DTM na naziv Sheeta i potom klik na View Code

automatsko sortiranje nakon promjene podataka u Excel stupcima

Private Sub Worksheet_Change(ByVal Target As Range)
'automatsko sortiranje prema prvom stupcu (2, 1)
'automatsko sortiranje po drugom stupcu (
1, 2)
'http://ic.ims.hr/faq/office2007/excel2007/automatic-sort.html

Application.EnableEvents = False
Range("Table_range").Sort Key1:=Range("Table_range")(
2, 1), Order1:=xlDescending, Header:=xlNo
Application.EnableEvents = True
End Sub

Evo još jedna VBA makronaredba za automatsko sortiranje po specifičnom stupcu

'---------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 Or Target.Cells.Count > 1 Then Exit Sub 'column for change data
Dim SortRange As Range
Set SortRange = Range(("A1"), Cells(Rows.Count, 2).End(xlUp))
SortRange.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlYes 'sort by B column
End Sub

'---------------------------------------------------------

Također pogledajte tutorijale:
- Automatsko kopiranje i sortiranje formulom

- Automatsko sortiranje i grupiranje podataka

Adsense sponzor







Adsense sponzor




©- 2006 - 2018 - IvanC  - Sva prava pridržana.  ic.ims.hr