Witam.
Przeszukałem już wiele postów, ale nie znalazłem odpowiedzi na pytanie. A mianowicie mam następujący problem - chcę stworzyć bazę wypożyczanych i oddawanych elementów, w pliku bazowym Excela mam bazę elementów, są one opatrzone nazwą i numerem katalogowym (ponad 3000 elementów), otrzymuję WZ i PZ w formie pliku csv po każdym wydaniu lub zdaniu.
Plan jest taki, że ręcznie wrzucam pliki CSV do poszczególnych folderów, tj. pliki PZ do folderu PZ i analogicznie dla WZ. Makro miałoby automatycznie, po uruchomieniu wczytywać wybrane dane we właściwe miejsca. Miałoby to wyglądać w sposób następujący: całość ma się odbywać na poziomie trzech plików xls, głównego, który zaprezentuje końcowe zestawienie i dwóch plików xls do których wczytywane będą WZ dla pierwszego i PZ dla drugiego, no więc krok po kroku co ma się dziać.
Uruchamiam makro, a ono:
1. z poziomu pliku WZ.xls, sprawdza, czy w folderze WZ znajdują się nowe pliki csv(wcześniej nie wczytane, aby uniknąć dublowania), jeśli są, z każdego z osobna kopiuje 5 i 7 kolumnę (zawiera nr kat i liczbę elementów), każdorazowo zakładając nowy arkusz, któremu nadaje nazwę odczytaną z komórki A2 danego csv i ma to wstawić w kolumnę A i B, dodatkowo z A2 i B2 (csv) ma skopiować dane i wstawić odpowiednio w C1 i D1 w tym samym arkuszu i kontynuuje aż sprawdzi wszystkie.
Dla każdego nowo stworzonego arkusza, po wstawieniu danych robi tabelę przestawną, z zakresu kolumn A i B i wstawia w tym samym arkuszu.
Może na chwilę obecną na tym zakończmy, bo dalsze kroki są jeszcze bardziej skomplikowane, a może z resztą dam już sobie radę, z tym próbowałem na wiele sposobów, ostatecznie udało mi się wczytać całość pliku za pomocą pobierania danych zewnętrznych (tworzenie linków), ale zakłada mi tylko jeden arkusz i nie nadaje mu nazwy a w dodatku przy ponownym wczytaniu danych z folderu dubluje pliki, poniżej kod:
Przeszukałem już wiele postów, ale nie znalazłem odpowiedzi na pytanie. A mianowicie mam następujący problem - chcę stworzyć bazę wypożyczanych i oddawanych elementów, w pliku bazowym Excela mam bazę elementów, są one opatrzone nazwą i numerem katalogowym (ponad 3000 elementów), otrzymuję WZ i PZ w formie pliku csv po każdym wydaniu lub zdaniu.
Plan jest taki, że ręcznie wrzucam pliki CSV do poszczególnych folderów, tj. pliki PZ do folderu PZ i analogicznie dla WZ. Makro miałoby automatycznie, po uruchomieniu wczytywać wybrane dane we właściwe miejsca. Miałoby to wyglądać w sposób następujący: całość ma się odbywać na poziomie trzech plików xls, głównego, który zaprezentuje końcowe zestawienie i dwóch plików xls do których wczytywane będą WZ dla pierwszego i PZ dla drugiego, no więc krok po kroku co ma się dziać.
Uruchamiam makro, a ono:
1. z poziomu pliku WZ.xls, sprawdza, czy w folderze WZ znajdują się nowe pliki csv(wcześniej nie wczytane, aby uniknąć dublowania), jeśli są, z każdego z osobna kopiuje 5 i 7 kolumnę (zawiera nr kat i liczbę elementów), każdorazowo zakładając nowy arkusz, któremu nadaje nazwę odczytaną z komórki A2 danego csv i ma to wstawić w kolumnę A i B, dodatkowo z A2 i B2 (csv) ma skopiować dane i wstawić odpowiednio w C1 i D1 w tym samym arkuszu i kontynuuje aż sprawdzi wszystkie.
Dla każdego nowo stworzonego arkusza, po wstawieniu danych robi tabelę przestawną, z zakresu kolumn A i B i wstawia w tym samym arkuszu.
Może na chwilę obecną na tym zakończmy, bo dalsze kroki są jeszcze bardziej skomplikowane, a może z resztą dam już sobie radę, z tym próbowałem na wiele sposobów, ostatecznie udało mi się wczytać całość pliku za pomocą pobierania danych zewnętrznych (tworzenie linków), ale zakłada mi tylko jeden arkusz i nie nadaje mu nazwy a w dodatku przy ponownym wczytaniu danych z folderu dubluje pliki, poniżej kod:
Code: vb