Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Excel przenoszenie wartości kilku komórek z kilku kart gdy spełniony warunek

mar-ilo 29 Sep 2017 09:19 972 4
  • #1
    mar-ilo
    Level 11  
    Witam!

    Potrzebuję pomocy z poprawnym wstawieniem lub modyfikacją obecnego makra.

    Aktualne makro po aktywowaniu kopiuje wybrane wartości z kilku różnych kart w kolejności alfabetycznej kart, jeśli w kolumnie C jest konkretny dostawca.



    Teraz w załączonym pliku potrzebuję w ostatniej karcie "podział na kolory" wstawić (lub przekształcić obecne) makro, żebym sam mógł wybrać albo z listy rozwijanej, lub przy pomocy zrobienia dla różnych kolorów (black9, black9 PUR, dąb3, dąb3 PUR, white, white PUR, dąb2) osobnych przycisków , tak żeby kopiowało wartości tylko tych wierszy w których nazwa wybranego koloru (black9, black9 PUR, dąb3, dąb3 PUR, white, white PUR, dąb2) zawiera się w treści wartości w komórkach w kolumnie D wśród kart których nazwy zaczynają się od T-

    kopiować miały by się tylko takie wartości jakie się kopiują w obecnie zastosowanym makro (nie wszystkie kolumny z kart T-... są mi potrzebne w karcie "podział na kolory" .

    W przypadku tego pliku nie ma znaczenia jaki jest producent elementu w kartach z T na początku co było kryterium aktualnego.
    wybór co miałoby się skopiować ma być tylko na podstawie koloru.

    Jest ktoś w stanie pomóc z tym tematem, nie ukrywam, że dla mnie to kosmos... jestem początkowym użytkownikiem

    Z góry bardzo dziękuję za pomoc :-)
  • #2
    adamas_nt
    Moderator of Programming
    Zakisił Ci się jakiś błąd w arkuszu "podział na kolory". Przynajmniej w tym załączonym pliku. Trzeba było zrobić kopię i to dopiero w Calc (!).

    Moja propozycja:
    -ComboBox, wypełniany przy WorkbookOpen z arkusza "Opcje" (możesz sobie dopisywać kolory)
    -dodatkowa gałąź w instrukcji If sprawdzająca Indeks ComboBoxa
    -dodatkowy warunek z wykorzystaniem InStr jeśli ListIndex > -1
    Jeśli nie wybierzesz koloru, skopiuje wszystkie.

    Podobnie możesz zrobić z wyborem dostawcy.
  • #3
    mar-ilo
    Level 11  
    Wielkie dzięki za podjęcie tematu!

    Działa ale trochę inaczej niż potrzebuję. Dane przenoszą się do karty CCC, a chciałbym żeby pojawiały się w karcie podział na kolory, w tej w której jest lista rozwijana koloru i przycisk pobierz. Karta Constract może zostać usunięta ponieważ nie jest mi potrzebna.
    Dodatkowo potrzebuję aby przenosiły się wszystkie wiersze w danym kolorze bez względu na to czy producentem jest CCC czy też jakiś inny dowolny dostawca (pierwotne makro miało przenosić dane tylko dla jednego dostawcy - obecne ma przenosić do karty "podział na kolory"odpowiednie dane tylko na podstawie koloru bez znaczenia jaki jest dostawca, )

    Mam jeszcze pytanie w jaki poprawny sposób mogę dodać lub usunąć kolor do tej listy rozwijanej? po usunięciu lub dopisaniu dodatkowego koloru w kolumnie A w karcie "opcje" nic się nie zmienia i nadal do wyboru są pierwotne kolory (potrzebuję dodać kolor brown33 a w przyszłości dojdą jeszcze kolejne, więc potrzebuję wiedzieć jak można dodać).

    Przepraszam, że za pierwszym razem nie do końca jasno opisałem czego potrzebuję, mam nadzieję że tym razem jest już ok :-)
  • Helpful post
    #4
    adamas_nt
    Moderator of Programming
    Widzę, że nie bardzo lubisz makra ;) a wystarczy:
    1. makro z WorkbookOpen powtórzyć przy WorksheetActivate (aktualizacja listy Combobox''a).
    2. Usunąć instrukcje warunkowe dot. producenta

    Listę kolorów modyfikujesz w arkuszu "Opcje". Musi być "ciurkiem" (bez dziur).
    Edit 20:17 - zmieniłem załącznik (Clear brakowało przy Activate)
  • #5
    mar-ilo
    Level 11  
    Rewelacja, właśnie o to mi chodziło :-)

    Bardzo dziękuję!