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 - VBA makronaredba za automatsko bojanje ćelija nakon unosa podataka i pritiska na tipku Enter - Automatic highlight Cell color with condition

Kako automatski ispuniti ćeliju bojom nakon unosa određenog podatka
(Automatic fill color cell after entered data )

Search This Web Site



Bojanje ćelije nakon upisa podatka u ćeliju (automatic highlight cell color after entered specific tekst or number)

Ako imate potrebu obojati ćeliju bojom ili da ćelija promijeni boju nakon upisa točno određenog specifičnog podatka u neki range tada pogledajte ovaj tutorijal i upute kako to uraditi.

Uzmimo situaciju na slici ispod. Želimo da nakon upisa nekog specifičnog podatka u raspon tablice nakon pritiska na tipku Enter automatski se promijeni boja pozadine (background) ćelije tj. da se ćelija ispuni određenom bojom. Uočite da samo točan upis specifičnog podatka boja ćeliju.

automatic fill cell color with criteria

Prvi korak je da znamo koji su brojevi kodova boja koji se mogu koristiti u VBA makronaredbi koja je prikazana ispod. Ako ne znate brojeve za boje u VBA pogledajte tutorijal Kako saznati broj boje u VBA. Na slici ispod imamo prikazano koji su specifični uvjeti podataka koje upisujemo i boje koje su im dodijeljene.

Dakle želimo nakon upisa nekog podatka koji smo definirali u stupcu "I" (ovo je samo za prikaz radi lakšeg tutorijala) ali i ne moramo praviti ovu tablicu, ako znamo napamet što radimo sa našim podacima. Za ovaj tutorijal rješenje je VBA makronaredba ispod. Kopirajte VBA macro u Sheet-Module vaše Workbook.

Uočite u VBA makronaredbi razliku kada specificiramo tekst ili broj. Ako je u pitanju tekst ili kombinacija tekst-broj tada moramo staviti navodnike a ako je u pitanju broj tada ne moramo staviti navodnike

  Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'fill color cells after entered data (number, text, combination)
Dim icolor As Integer
If Not Intersect(Target, Range("B2:F16")) Is Nothing Then
Select Case Target.Value
Case "Milano"
icolor = 3
Case Is = "abc"
'tekst i kombinacije sa brojem pisati sa navodnicima
icolor = 3
Case "Wiena"
icolor = 4
Case "Paris"
icolor = 5
Case "Roma"
icolor = 6
Case "Tokio"
icolor = 7
Case "a2A"
'isključivo tekst i kombinacija sa brojem
icolor = 8
Case "2B"
icolor = 9

Case 1001  'broj case pisati bez navodnika
icolor = 10
Case 777 
'broj case pisati bez navodnika
icolor = 12
Case Else
Target.Interior.ColorIndex = xlColorIndexAutomatic
End Select
Target.Interior.ColorIndex = icolor
End If
End Sub

Adsense sponzor



   

ili ovaj VBA macro ispod

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
' Conditional Formatting for more than 3 conditions
Dim rng As Range
Dim LastRow As Long
' Target is a range::therefore,it can be more than one cell
' For example,,someone could delete the contents of a range,
' or someone could enter an array..

LastRow = Range("B1048576").End(xlUp).Row
'broj zadnjeg reda za Excel 2007
Set rng = Intersect(Target, Range("B2:F16" & LastRow))
If rng Is Nothing Then
Exit Sub
Else
Dim cl As Range
For Each cl In rng
Select Case cl.Value
Case "Milano"
'tekst i kombinacije sa brojem pisati sa navodnicima
cl.Interior.ColorIndex = 3
Case "Wiena"
cl.Interior.ColorIndex = 4
Case "Paris"
cl.Interior.ColorIndex = 5
Case "Roma"
cl.Interior.ColorIndex = 6
Case "Tokio"
cl.Interior.ColorIndex = 7
Case Else
cl.Interior.ColorIndex = 2
End Select
Next cl
End If
End Sub

Adsense sponzor



Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
' Conditional Formatting for more than 3 conditions
' fill adjanced cell after entered data (offset)

Dim rng As Range
Dim LastRow As Long
' Target is a range::therefore,it can be more than one cell
' For example,,someone could delete the contents of a range,
' or someone could enter an array..

LastRow = Range("B1048576").End(xlUp).Row
Set rng = Intersect(Target, Range("B2:F16" & LastRow))
If rng Is Nothing Then
Exit Sub
Else
Dim cl As Range
For Each cl In rng
Select Case cl.Value
Case "Milano"
'tekst i kombinacije sa brojem pisati sa navodnicima
cl.Offset(0,
-1).Interior.ColorIndex = 3 'minus if fill cell color left
Case "Wiena"
cl.Offset(0,
-1).Interior.ColorIndex = 4 'minus if fill cell color left
Case "Paris"
cl.Offset(0,
1).Interior.ColorIndex = 5
Case "Roma"
cl.Offset(0,
1).Interior.ColorIndex = 6
Case Else
cl.Offset(0,
1).Interior.ColorIndex = 2
End Select
Next cl
End If
End Sub

Kako obojati susjednu ćeliju nakon unosa podatka i pritiska na tipku Enter
(automatic coloring adjanced cell after entered data)

Ovaj VBA macro sa strane boja susjednu ćeliju lijevo ili desno (OFFSET). Ako želimo u LIJEVO tada postavimo MINUS znak

 

 

 

automatic highlight adjanced color cell after entered data

Teme vezane za ćelije u boji

- Uvjetno oblikovanje u Excelu 2003
-
Conditional formatting u Excelu 2007
-
Sortiranje ćelija u boji
-
Brojanje ćelija u boji
-
Zbrajanje vrijednosti u ćelijama u boji
-
Kako pronaći podatak u tablici i obojati ćeliju ili red bojom
-
Kako saznati određeni broj koda za specifičnu boju u VBA
- Kako automatski obojati ćeliju uz uvjet boje iz druge ćelije u istom redu
 

Adsense sponzor





Adsense sponzor




  Ova web stranica koristi COOKIES - COPYRIGHT ©- 2006 - 2020 - IvanC  - Sva prava pridržana.  ic.ims.hr