< návrat zpět

MS Excel


Téma: Podmíněné formátování Duplicita rss

Zaslal/a 22.4.2016 11:19

Dobrý den,
prosim, neznate někdo jak v podminenem formatovani nastavit to abych když mam duplicitu ale vice věci se mi kazda oblast duplicity zabarvila jinou barvou?
PŘ:
Sloupec A
Jana
Jana
Petr
Petr
Petr
Petr
Tom
Tom
Atd.a je potřeba aby se jany zbarvili jednou barvou Petrove další, a Tomove taky. Je to možný? Děkuji

Zaslat odpověď >

Strana:  1 2   další »
#031204
avatar
pokud můžou být zabarveny všechny stejné položky tak stačí naformátovat podle vzorce
A1="Jana"
a určit výplň takhle pro všechna jména

pokud by se měly zabarvit jen duplicity tak je to obdobné a použil jsem sloupec B jako pomocný viz příloha
Příloha: zip31204_podm_form.zip (8kB, staženo 23x)
citovat
#031212
avatar
Dekuji za napad ale ja tech radku mam desitky nekdy stovky nemuzu kazdou věc zapisovat zvlast.. myslela jsem ze by to slo nejak najednou... ale asi necitovat
#031213
avatar
na to by bylo asi lepší určit jedinečnost a ošetřit to nějak v kódu
a na to jsou tu jiní experti 10citovat
#031214
avatar
No možno takto. Ale ak tých mien bude priveľa, tak asi nejako makrom. Len tie farby priradiť automaticky asi bude trochu problém.
Příloha: zip31214_mena.zip (8kB, staženo 23x)
citovat
icon #031216
avatar
Na marjankajovo riešenie som sa nepozeral. Cez VBA nejako takto. Vyber si myškou oblasť, v ktorej chceš vyznačiť duplicity (predpokladám, že sa jedná o jeden stĺpec) a spusti kód. Pokiaľ farbičky nevyhovujú, tak spusti kód znovu.Sub ColorDups()
Dim myRng As Range, cell As Range
Set myRng = Selection
myRng.Interior.Pattern = xlNone 'vymaze farby
For Each cell In myRng.Cells
If WorksheetFunction.CountIf(myRng, cell) > 1 Then ' existuju duplicity
If WorksheetFunction.Match(cell, myRng, 0) = cell.Row - myRng.Cells(1, 1).Row + 1 Then 'prvy vyskyt duplicity
cell.Interior.Color = RGB(WorksheetFunction.RandBetween(0, 255), WorksheetFunction.RandBetween(0, 255), WorksheetFunction.RandBetween(0, 255))
Else: cell.Interior.Color = myRng.Cells(WorksheetFunction.Match(cell, myRng, 0), 1).Interior.Color
End If
End If
Next cell
End Sub
Nejedná sa síce o podmienené formátovanie ale účel by to plniť mohlo. Je tam malá pravdepodobnosť, že sa farby budú opakovať, ale taká situácia nastať môže. Dá sa to ošetriť, ale už sa mi nechce, úlohu som bral ako malú rozcvičku.citovat
icon #031217
avatar
Tak som si pohral ešte s tým vytvorením unikátnych farieb, takto by to už malo byť o.k.:Sub ColorDupsModified()
Const j = 50 'pocet farieb - predpokladam max 50 roznych farebnych oddtienov
Dim clrArr(1 To j) as Long, i As Byte, k As Byte, clrVal As Long, clrValOccupied As Boolean, myRng As Range, cell As Range

'vytvorenie unikatnej kolekcie farieb
For k = 1 To j
clrValOccupied = False
clrVal = RGB(WorksheetFunction.RandBetween(0, 255), WorksheetFunction.RandBetween(0, 255), WorksheetFunction.RandBetween(0, 255))
For i = 1 To k
If clrArr(i) = clrVal Then
clrValOccupied = True
Exit For
End If
Next i
If clrValOccupied = False Then
clrArr(k) = clrVal
Else: k = k - 1
End If
Next k

Set myRng = Selection
myRng.Interior.Pattern = xlNone 'vymaze farby
k = 0
For Each cell In myRng.Cells
If WorksheetFunction.CountIf(myRng, cell) > 1 Then ' existuju duplicity
If WorksheetFunction.Match(cell, myRng, 0) = cell.Row - myRng.Cells(1, 1).Row + 1 Then 'prvy vyskyt duplicity
k = k + 1
cell.Interior.Color = clrArr(k)
Else: cell.Interior.Color = myRng.Cells(WorksheetFunction.Match(cell, myRng, 0), 1).Interior.Color
End If
End If
Next cell
End Sub
citovat
icon #031218
avatar
@marjankaj: chválimcitovat
#031224
Merlin99
Super priklad
kolikrat sem to taky resil dost nesikovne
marjankaj : pekny reseni pouziju
AL: chtel jsme zkusit ty makra ale kdyz vlozim program do listu nic to nedela co delam spatne? pro jakej sloupec to bere ty barvy? DíK MOCcitovat
#031226
avatar

Merlin99 napsal/a:

Super priklad
kolikrat sem to taky resil dost nesikovne
marjankaj : pekny reseni pouziju
AL: chtel jsme zkusit ty makra ale kdyz vlozim program do listu nic to nedela co delam spatne? pro jakej sloupec to bere ty barvy? DíK MOC

Veď čítaj to poriadne. Vyber myškou oblasť.citovat
#031230
Merlin99
Nojo díky jsem nepozornej. Funguje supercitovat

Strana:  1 2   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

VBA - načtení dat ze souboru s proměnným názvem

€Ł мσşqμΐτσ • 22.1. 19:28

Sumar nakupov

Pavlus • 22.1. 13:05

VBA - načtení dat ze souboru s proměnným názvem

Fantasyk • 22.1. 9:12

Sumar nakupov

Robo11 • 21.1. 21:23

VBA - načtení dat ze souboru s proměnným názvem

€Ł мσşqμΐτσ • 21.1. 12:21

Tělo emailu ve VBA - formát

Fantasyk • 20.1. 20:47

odstranenie opakujucich sa udajov v riadkoch

frantilopa • 20.1. 18:12