Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Excel/VBA] Wczytanie danych z txt do dwóch Combobox'ów

lemar23 04 Lut 2012 19:58 1614 6
  • #1 04 Lut 2012 19:58
    lemar23
    Poziom 7  

    Witam,

    Jak zmodyfikować kod do wczytywania danych z pliku txt aby były wczytane do 2-óch oddzielnych Combobox'ów?
    Przykład w załączniku.

    Program jest narazie na starcie więc jest tylko jeden przycisk opisany kodem, reszta jest w planowaniu.

    Proszę o wyrozumiałość ponieważ jestem początkujący.

    Oto kod:

    Code:
    Private Sub cmbwczytaj_Click()
    
       Dim InFile As Integer
            InFile = FreeFile
            plik_txt = Application.GetOpenFilename("Pliki txt(*.txt),*txt")
           
            Open plik_txt For Input As InFile
        While Not EOF(InFile)
            Line Input #InFile, NextTip
       cmbxnum.AddItem NextTip
     
        Wend
        Close InFile
    End Sub

    0 6
  • Pomocny post
    #2 04 Lut 2012 20:07
    marcinj12
    Poziom 40  

    Ponieważ dane które pobierasz masz rozdzielone tabulatorem, wystarczy taka prosta przeróbka:

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #3 04 Lut 2012 21:52
    lemar23
    Poziom 7  

    Super :) A jeśli chodzi o wczytanie danych z arkusza np. PRODUKTY (jak w załączniku) do LISTBOXA potrzebna jest zdefiniowana nowa funkcja czy wystarczy prosty kod?

    Dokładniej mówiąc chodzi o przycisk "START" w arkuszu, który odpali program. Obecnie mi odpala program ale chciałbym jeszcze dodać aby ładował dane z wymienionego wyżej arkusza do ListBoxa.

    Zastosowałem prosty kod:

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • Pomocny post
    #4 04 Lut 2012 22:23
    marcinj12
    Poziom 40  

    W Listboxie możesz ustawić ColumnCount = 5 i RowSource = =PRODUKTY!B2:F46
    Ewentualnie, przy klinięciu przycisku START wczytać dane ręczenie wiersz po wierszu:

    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #5 05 Lut 2012 06:15
    lemar23
    Poziom 7  

    a da się określić szerokość kolumn dla wczytanych danych?
    Bo np nazwy mi nie wyświetla całej tylko ucina minimalnie.

    0
  • Pomocny post
    #6 05 Lut 2012 10:58
    marcinj12
    Poziom 40  

    Jak najbardziej, pod jakże tajemniczą właściwością: ColumnWidths. Wpisujesz tam szerokości poszczególnych kolumn rozdzielone średnikiem.

    0
  • #7 05 Lut 2012 11:57
    lemar23
    Poziom 7  

    No fakt średnik :)
    Sam sobie klocki pod nogi podrzuciłem, dając przecinek...

    Dzięki za pomoc. Teraz biorę się za przeszukiwanie ListBoxa według danych wczytanych z pliku txt. Pomysł jest teraz tylko aplikacja kodu.

    Jeśli ktoś mógłby mi tylko powiedzieć czy bez problemu jestem w stanie wykorzystać do mojego pliku polecenie FILTER aby przeszukać LISTBOXA.

    0