Prikaz v ComboBox-u

Pomoč pri izdelavi makrov
Odgovori
BJ
Prispevkov: 170
Pridružen: Sr Okt 26, 2005 5:46 pm

Prikaz v ComboBox-u

Odgovor Napisal/-a BJ »

Pozdravljeni!
Prosim za pomoč pri prikazu teksta v ComboBox-u.
Sedaj mi podatke prikazuje v vrsticah in ne v eni vrstci, kot bi potreboval.
N.pr.:
Stolpec1
Stolpec2
Stolpec3
Hotel pa bi: Stolpec1 Stolpec2 Stolpec3
V lastnostih imam nastavljeno:
BoundColumn 1
ColumnCount 3
ColumnWidths 90 pt;70 pt;24 pt
Hvala in LP
admin
Site Admin
Prispevkov: 3691
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a admin »

Kako pa imate nastavljeno lastnost ListFillRange? Ali imate v njej zapisano tabelo, ki im atri stolpce (npr: A1:C20)?
lp,
Matjaž Prtenjak
Administrator
BJ
Prispevkov: 170
Pridružen: Sr Okt 26, 2005 5:46 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a BJ »

Tole je cela koda za Combo

Koda: Izberi vse

Private Sub UserForm_Initialize()
 Dim UniqueList()    As String
    Dim x               As Long
    Dim Rng1            As Range
    Dim c               As Range
    Dim Unique          As Boolean
    Dim y               As Long
      
    Set Rng1 = Sheets("Podatki").Range("B5:D2000")
    y = 1
      
    ReDim UniqueList(1 To Rng1.Rows.Count)
      
    For Each c In Rng1
        If Not c.Value = vbNullString Then
            Unique = True
            For x = 1 To y
                If UniqueList(x) = c.Text Then
                    Unique = False
                End If
            Next
            If Unique Then
                y = y + 1
                Me.cboNajdi.AddItem (c.Text)
                UniqueList(y) = c.Text
            
            End If
        End If
 Next

 End Sub
admin
Site Admin
Prispevkov: 3691
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a admin »

:(... Kar poglejte na konec, če je lastnost pravilno nastavljena... Čez priloženo kodo se na žalost nimam časa prebijati...
lp,
Matjaž Prtenjak
Administrator
BJ
Prispevkov: 170
Pridružen: Sr Okt 26, 2005 5:46 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a BJ »

admin napisal/-a::(... Kar poglejte na konec, če je lastnost pravilno nastavljena... Čez priloženo kodo se na žalost nimam časa prebijati...
Kateri konec- konec česa?
admin
Site Admin
Prispevkov: 3691
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a admin »

V kodi ustvarite ComboBox (vsaj tako pravite) in napisal sem vam, da poglejte kako ima ta comboBox nastavljeno lastnost ListFillRange. Ta lastnost mora kazati na neko tabelo s tremi stolpci in te tri stolpce boste vi videli v padajočem seznamu. Če lastnost ni pravilno nastavljena (in sklepam, da ni!) potem, ne boste videli pravilnega rezultata.
lp,
Matjaž Prtenjak
Administrator
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a cedra »

Dovolite, da vprašam, kaj vi pravzaprav želite? Ali to, da za vsak edinstven zapis v stolpcu B, dobite tudi pripadajoč zapis v stolpcu C in D?
Torej, če je edinstven zapis v B7, bi radi poleg zapisane vrednosti B7 v cboNajdi, v isti vrstici tudi vrednost C7 in D7
lp,

cedra
BJ
Prispevkov: 170
Pridružen: Sr Okt 26, 2005 5:46 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a BJ »

Točno to bi želel.
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a cedra »

Potem, pa bo tole verjetno pomagalo:
Vrstico:

Koda: Izberi vse

Me.cboNajdi.AddItem (c.Text)
zamenjajte s tole:

Koda: Izberi vse

Me.cboNajdi.AddItem (c.Text) & "  " & c.Offset(0, 1) & "  " & c.Offset(0, 2)
Presledke sem naredil zaradi boljše preglednosti
Pomaga?
lp,

cedra
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a cedra »

Saj res, pozabil sem zapisati :| , da sedaj iščete le po stolpcu B.
Torej vrstica
Set Rng1 = Sheets("Podatki").Range("B5:D2000")
mora sedaj biti:

Koda: Izberi vse

Set Rng1 = Sheets("Podatki").Range("B5:B2000")
ali še bolje, nekako takole:

Koda: Izberi vse

Set Rng1 = ActiveSheet.Range(Range("B1"), Range("B1").End(xlDown))
V tem primeru boste lahko makro sprožili na trenutno aktivnem listu. Obseg pa bo od B1 pa do zadnje polne vrstice v stolpcu B.
lp,

cedra
BJ
Prispevkov: 170
Pridružen: Sr Okt 26, 2005 5:46 pm

Re: Prikaz v ComboBox-u

Odgovor Napisal/-a BJ »

Urejeno!
Deluje z naslednjo kodo:

Koda: Izberi vse

Set Rng1 = Sheets("Podatki").Range("B5:B2000")
Najlepša hvala obema!
LP
Odgovori