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.

VBA pobieranie i wstawianie danych poprzez formularz

240145 28 Maj 2012 14:23 3050 9
  • #1 28 Maj 2012 14:23
    240145
    Poziom 7  

    Witam.

    Jestem początkowym użytkownikiem VBA jednak potrzebuje stworzyć swego rodzaje wyszukiwarkę poprzez VBA. A mianowicie chodzi o to że poprzez stworzony formularz (załączony jpg) muszę wyszukać i wstawić indeksy wraz z nazwami elementów umieszczonych w pliku o nazwie detale. Czy można zrobić coś takiego? Próbowałem zrobić to poprzez funkcję tekstową InStr ale nic nie chce mi wyszukiwać

    0 9
  • #2 28 Maj 2012 14:51
    walek33
    Poziom 28  

    Cytat:
    chodzi o to że poprzez stworzony formularz (załączony jpg)

    Jaki formularz?

    0
  • #3 28 Maj 2012 16:47
    240145
    Poziom 7  

    Zdjęcie formularza zamieściłem w dołączonym pliku

    0
  • #4 29 Maj 2012 08:05
    adamas_nt
    Moderator Programowanie

    240145 napisał:
    Zdjęcie formularza zamieściłem w dołączonym pliku
    Jakieś malutkie to zdjęcie :) Nic nie widać. Najprościej byłoby, gdybyś wrzucił plik zawierający formularz.

    0
  • #6 29 Maj 2012 11:32
    adamas_nt
    Moderator Programowanie

    Wrzuć jeszcze kod przycisku [OK]. Jeśli długi, to w załączniku txt.

    0
  • #7 29 Maj 2012 12:00
    240145
    Poziom 7  

    Próbowałem zrobić czymś takim.

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Dodano po 3 [minuty]:

    Przepraszam zapomniałem dodać jeszcze jednej linii
    Kod: vb
    Zaloguj się, aby zobaczyć kod

    0
  • #8 29 Maj 2012 12:36
    adamas_nt
    Moderator Programowanie

    Hmm, nic z listy w arkuszu "Arkusz1" nie pasuje do listy z "detale".

    Cóż, był kiedyś temat dot. rezerwacji sal. Nie mogę go znaleźć, ale uchował mi się plik na dysku. Na jego podstawie utworzyłem wyszukiwarkę. Pierwsze pole tekstowe (indeksy) filtruje po InStr (również wewnątrz ciągu). Drugie (nazwy), od lewej strony. Wybierz lepszą metodę dla Twojego przypadku.
    Wynikiem jest odfiltrowana lista, z której wybierasz rekord i... no właśnie.

    Przeanalizuj, może coś z tego spłodzisz.

    0
  • #9 29 Maj 2012 13:47
    240145
    Poziom 7  

    Ogromne dzięki ten plik jest świetny właśnie o to mi chodziło. Jednak mam jeszcze dwa pytanka. Czy orientujesz się jakiego polecenia i w którym miejscu musiałbym użyć jeśli chciałbym pobierać listę indeksów i nazw z zewnętrznego pliku excela (próbuje workbooks ("z:\zlecenia\baza wyrobów.xls") ale coś mi nie wychodzi) I drugie jak zrobić aby po kliknięciu ok w formularzu obecnie wybrany indeks i nazwa wyrobu były wklejane w zaznaczoną komórkę w drugim arkuszu?

    0
  • #10 29 Maj 2012 22:04
    adamas_nt
    Moderator Programowanie

    240145 napisał:
    chciałbym pobierać listę indeksów i nazw z zewnętrznego pliku excela
    Nie kombinował bym tu zbyt dużo. Kopiuj-Wklej (makrem lub ręcznie) do arkusza pomocniczego i mamy dane w zasięgu. Z zapisywaniem podobnie - nagraj makro kopiowania arkusza do nowego pliku i dostosuj (czyt. posprzątaj po rejestratorze).
    240145 napisał:
    jak zrobić aby po kliknięciu ok w formularzu obecnie wybrany indeks i nazwa wyrobu były wklejane w zaznaczoną komórkę w drugim arkuszu?
    W makro przycisku formularza z załącznika jest kilka linijek poprzedzonych apostrofem. Mniej więcej służą do zapisywania w arkuszu. Zamiast wyszukania ostatniego wiersza możesz podstawić: ostWrs=.ActiveCell.row

    0