vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest poniedziałek, 13 maja 2024 roku.
Ustaw jako stronę startową Ulubione Napisz
PowrótPowrót do serwisu  RegulaminRegulamin rssRSS

  tytuł wątku:
Wątki dyskusji

wyciaganie powtarzalnych wartosci z kolumny danych


otwartyotwarty rozpoczął: m_123 postów: 4



napisał: m_123
postów: 20


umieszczony:
1 sierpnia 2005
15:58

  
dzieki za pomoc :)
napisał: pil
postów: 154


umieszczony:
29 lipca 2005
07:19

  
może mało elegenckie, ale działa:
definicja klasy clsMiasto (akurat to działa na miejscowościach)z nazwą :
Option Explicit
Public nazwa As String


kod w arkuszu z danymi (w moim wypadku "Arkusz1"):
Option Explicit

Private Sub Odswiez()
    
Dim zakres As Range, zakresBak As Range
Dim komorka As Object
Dim miasto1 As clsMiasto, miasto2 As clsMiasto
Dim colMiasto As Collection
Dim powtorzone As Boolean
Dim i As Integer

Set zakres = Me.Range("A1:A100")
zakres.Sort Key1:=Me.Range("A1")
    
For Each komorka In Me.Range("B1:B100")
'skasowanie starych wartosci
    komorka.Value = ""
Next komorka
    
Set colMiasto = New Collection
    
For Each komorka In zakres
    
    If komorka.Value <> "" Then 'zignoruje 'puste' komorki w zakresie
        
        powtorzone = False
        
        Set miasto1 = New clsMiasto
        miasto1.nazwa = komorka.Value
        
        For Each miasto2 In colMiasto
            'sprawdzenie czy już jest w kolekcji takie miasto
            If miasto1.nazwa = miasto2.nazwa Then powtorzone = True
        Next miasto2
        
        If Not (powtorzone) Then
            'dodanie do kolekcji
            colMiasto.Add miasto1
        End If
        
        Set miasto1 = Nothing
    End If
    
Next komorka
 
For i = 1 To colMiasto.Count
    'wypełnienie kolumny B
    Set miasto1 = New clsMiasto
    Set miasto1 = colMiasto.Item(i)
    
    Me.Range("B" & i).Value = miasto1.nazwa
    
    Set miasto1 = Nothing
    
Next i

Set colMiasto = Nothing

End Sub

Private Sub cmdOdswiez_Click()
    Odswiez
End Sub


przy okazji posortują się dane w zakresie A1:A100, żeby sobie z tym poradzić można sortować kopie zakresu A1:A100 w innym arkuszu.
Powodzenia.
napisał: pil
postów: 154


umieszczony:
29 lipca 2005
07:17

  
może mało elegenckie, ale działa:
definicja klasy clsMiasto (akurat to działa na miejscowościach)z nazwą :
Option Explicit
Public nazwa As String


kod w arkuszu z danymi (w moim wypadku "Arkusz1"):
Option Explicit

Private Sub Odswiez()
    
Dim zakres As Range, zakresBak As Range
Dim komorka As Object
Dim miasto1 As clsMiasto, miasto2 As clsMiasto
Dim colMiasto As Collection
Dim powtorzone As Boolean
Dim i As Integer

Set zakres = Me.Range("A1:A100")
zakres.Sort Key1:=Me.Range("A1")
    
For Each komorka In Me.Range("B1:B100")
'skasowanie starych wartosci
    komorka.Value = ""
Next komorka
    
Set colMiasto = New Collection
    
For Each komorka In zakres
    
    If komorka.Value <> "" Then 'zignoruje 'puste' komorki w zakresie
        
        powtorzone = False
        
        Set miasto1 = New clsMiasto
        miasto1.nazwa = komorka.Value
        
        For Each miasto2 In colMiasto
            'sprawdzenie czy już jest w kolekcji takie miasto
            If miasto1.nazwa = miasto2.nazwa Then powtorzone = True
        Next miasto2
        
        If Not (powtorzone) Then
            'dodanie do kolekcji
            colMiasto.Add miasto1
        End If
        
        Set miasto1 = Nothing
    End If
    
Next komorka
 
For i = 1 To colMiasto.Count
    'wypełnienie kolumny B
    Set miasto1 = New clsMiasto
    Set miasto1 = colMiasto.Item(i)
    
    Me.Range("B" & i).Value = miasto1.nazwa
    
    Set miasto1 = Nothing
    
Next i

Set colMiasto = Nothing

End Sub

Private Sub cmdOdswiez_Click()
    Odswiez
End Sub


przy okazji posortują się dane w zakresie A1:A100, żeby sobie z tym poradzić można sortować kopie zakresu A1:A100 w innym arkuszu.
Powodzenia.
napisał: m_123
postów: 20


umieszczony:
27 lipca 2005
17:16

  
Witam i prosze o pomoc.
Problem:
posiadam w kolumnie A - 10 wartości np.
(korzystne, średnie, niekorzystne, korzystne, średnie, niekorzystne, dobre, korzystne, średnie, niekorzystne)
Zwykle jest to od 2 do 5 różnych wartości słownikowych, w tym przypadku wyszly 4 (dobre, niekorzystne, korzystne, średnie).
Chodzi mi o to, ze musze wyciagnąć w kolejności alfabetycznej powtarzanlne nazwy slownikowe z tej kolumny i przepisac np. do kolumny obok. Czyli w kolumnie B chcialbym miec wynik
(dobre, niekorzystne, korzystne, średnie).
Dzieki wszystkim z gory za szybka pomoc.


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z