W załączeniu wg mnie trochę bardziej uporządkowany kod i parę zmian. Też myślałem o tym by dane otwierały się kiedy trzeba. Poprawiłem ale na razie jest jedno "ale" jeżeli zaczął byś wpisywać w liście coś od litery "w" przerzuciło by cie do danych - dlatego dodałem spację do pierwszej nazwy. Pomyślę o innym rozwiązaniu ale na razie nie mam czasu. Zobacz...
... Jak naciśniemy w arkuszu Kosztorys pole B7 czyli to białe puste szybko dwa razy to otwiera się Listbox z wyborem danej pracy ... Wszystko działa ok ... No niezupełnie ... ' ListBox1_Click ' usuwa z komórki ' AB7 ' wartość liczbową i po zamknięciu okna nie można go już ponownie otworzyć bez wstawienia tam liczby. ... Potrzebne są tylko trzy zmiany....
...niestety makro wychacza się... I będzie. Z tej prostej przyczyny, że użyłeś tab jako nazwa tabeli + to na co zwrócił Ci uwagę kolega marcinj12. Tu masz swój kawałek kodu po przeróbce do stanu działającego :D : Sub Makro1() Dim tabl(5, 5) For i = 1 To 5 Step 1 tabl(i, 2) = Cells(i, 1).Formula Next i End Sub Dodane:...
W makrze jest opis - tablica 6 elementowa - bo tyle kopiujesz pól - co to znaczy ?
Witam, mam plik w którym każdego dnia wypełnia się dane, a na końcu ostatniej zmiany są one kasowane i w to miejsce wpisuje się kolejne dane z dnia następnego. Mam pytanie czy jest możliwość stworzenia takiego makra ,które pobiera dane z określonego dnia na podstawie listy rozwijanej dotyczącej daty i kopiuje je w odpowiednią tabelę i zapisywało się...
Witam Potrzebuję pomocy w napisaniu makra. Mam w arkuszu1 dane w kolumnach od A5 do AB5000. W kolumnie G5 do G5000 znajduję się lista rozwijana z której użytkownik może wybrać kilka opcji. W przypadku kiedy użytkownik wybierze opcję "złomowe" chciałbym żeby makro przy użyciu przycisku przypisanego do tego makra wycięło wszystkie wiersze w których użytkownik...
Sama się o to prosisz (.UsedRange = zakres, gdzie zakres=Empty). Dalej nie rozumiem: jak chcesz to realizować? UsedRange to zakres, w którym znajdują się dane. Albo określisz wspólny PrintArea dla wszystkich arkuszy, lub chociaż ostatni wiersz, albo tablica dla każdego arkusza z zapisanym adresem zakresu w postaci tekstowej. Całe to makro (załącznik),...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...
Sprawdź, dostosuj. Zrezygnowałem z tablicy na rzecz prostego przypisania.
Kręcisz się w kółko. Zrozum, że w komórce nie zapiszesz danych jako VBComponent, Object, etc. W związku z tym nie uda Ci się ich pobrać i przekazać do funkcji w taki sposób. Możesz zapisać w tablicy nazwy obiektów, ale w odwołaniu musiałbyś używać jej indeksu w tablicy (liczby), nie nazwy. Metodę pobrania nazwy arkusza (Properties.Item) znając nazwę...
Wersja konserwatywna - z PROGMEM - też może być. Tylko nie zapomnij dorzucić nagłówka pgmspace.h i makr pgm_read_... przy odczycie zawartości tablicy ;)
Ok teraz masz kryteria w tablicach w kodzie VBA w razie jakbyś chciał dodać kryterium, musisz zwiększyć tablicę o 1 i dopisać do tego dodatkowego elementu kryterium z gwiazdkami. Jak zobaczysz kod to chyba będziesz wiedział o co kaman. Dodałem też zabezpieczenie przed kliknięciem dwa razy na makro
Zmienna 'tblArkusze' jest tablicą przecież. Musisz w pętli [syntax=vbscript]For i = LBound(tblArkusze) To UBound(tblArkusze) With Sheets(tblArkusze(i)) .Cells.Clear .AutoFilterMode = False End With Next[/syntax]
Czyżbyś zapomniał, że w AVRach odczyt z pamięci FLASH realizowany jest zupełnie inaczej niż odczyt z pamięci RAM? Po co są makra typu pgm_read_byte() itp? Kompilator sam tego nie wymyśli - niestety taka jest cena architektury Harwardzkiej. 4\/3!!
W LPCXpresso możesz bardzo łatwo tablicę ulokować, żeby rozpoczynała się od konkretnego adresu pamięci Flash. Klikasz w ustawienia projektu, pojawi się okno http://obrazki.elektroda.pl/3748232500_1... 1. Wybierasz MCU settings . 2. Klikasz Edit po czym pojawi się okienko konfiguracyjne pamięci. 3. Upewniasz się, że jest zaznaczona pamięć...
Do odczytu z pamięci programu użyj: pgm_read_byte lub memcpy_P Tu masz więcej funkcji/makr, które mogą Cię zainteresować: http://www.nongnu.org/avr-libc/user-manu...
Pozwoliłem sobie trochę przetestować :) Moje wnioski: Przeniesienie kolumny pomocniczej (rozwiązanie marek003) do ark "Baza danych" do kol D i korekta formuł w ark "ABC" =JEŻELI(CZY.BŁĄD(INDEKS('Baz... danych'!A:A;PODAJ.POZYCJĘ($B2;'B... danych'!$D:$D;0);1));&qu... danych'!A:A;PODAJ.POZYCJĘ($B2;'B...
A może /bez makra/ tak przez tablicę w tablicy zdefiniować ze dwa wiersze w pierwszym imiona w drugim wartości zaś tu wyszukaj.pionow i pobieranie danych z tamtej tablicy. Przykład: =WYSZUKAJ.PIONOWO(A1;imiona;2;FAŁSZ) gdzie: a1 - wpisane imię ewentualnie wybierane z listy, imiona - tablica z dwóch wierszy pierwszy imię, drugi przypisane wartosci do...
Łatwiej by było gdybyś załączył przykład z danymi. Dalej nie czaje z tym -1,0,1 W załączeniu przykład jak ja to zrozumiałem (oprócz tego -1,0,1 )
Cierpliwości kolego, wszystko wymaga czasu. Więc tak, doszedłem do wniosku ze caly problem nalezy rozwiazac od poczatku. Ruszyc baniakiem, wypic pare piw ( o papieroskach nie wspomne ), jak w kartach, dym piwo i przekleństwo:D. Efekt tej walki przedstawiam ponizej, a w zalaczniku przykladzik. Sposob edycji wynikow moze sie wydawac troche dziwny, ale...
Nie skazywałbym tych makr tak od razu na banicję, w końcu "Named Address Spaces" należy do rozszerzeń GNU C. Nie zawsze ma się komfort kompilowania projektu z rozszerzeniami GNU C. A niestety, kiedy zaczniemy używać g++, kwalifikator __flash przestaje być dostępny. Na szczęście jest constexpr :) Czy jest w tym różnica w prędkości dostępu do danych,...
Witam Co do TAblic A jak zapisać dane z kolumy KONE i KOM w tablicy a potem pobrać z niej je?
Dlaczego SQL? W arkuszu "dane" nie ma tabeli w rozumieniu Bazy Danych (Dane>wstaw tabelę). Odwołuj się do prawidłowych nazw. Z drugiej strony, zdaje się, że można to zrobić prościej. Czy chodzi Ci tylko o przypisanie list do combobox'ów? Łatwiej byłoby posługiwać się tablicami. Co z powtórzeniami?
Wiesz co wziąłeś się za makro nie do końca chyba rozumiejąc zasady. Pierwsza część: Po co to, jak jeszcze nie wprowadziłeś żadnych danych do tablicy: AA = tablica(a, f) BB = tablica(b, f) CC = tablica(c, f) DD = tablica(d, f) EE = tablica(e, f) Wszystkie wartości tych zmiennych (AA BB itd.) będą puste. Druga rzecz Wydaje mi się że nie te pętle zastosowałeś...
Proszę bardzo prosty kod w makro. Zmodyfikowałem troszkę nagrane makro - Zamień (Ctrl+H) z uwzględnieniem wielkości liter. Sub Makro1() For x = 1 To 18 Selection.Replace What:=Cells(x + 1, 1).Value, Replacement:=Cells(x + 1, 2).Value, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False,...
Gdzieś widziałem przykład wykorzystujący funkcję API SendMessage . Ale jak to z API na różnych maszynach może być różnie. Popatrz na taki przykład Dim temp1 As String Dim temp2 As String Sub Makro() temp1 = Cells(1, 1).Value ' zapamiętanie starej wartości dla Undo Cells(1, 1) = "coś" ' wpisanie nowej wartości do komórki...
Autor postu już pewnie zapomniał o co pytał 3,5 roku temu. Ja wtedy nie miałem czasu, żeby to analizować, bo zadanie nie jest trywialne i nie znalazłem gotowych rozwiązań odnoszących się do VBA. Na potrzeby podanego przykładu napisałem funkcję UDF StairIntersect, która wymaga podania 4 argumentów: zakresów lub tablic X1, Y1, X2 i Y2. Muszą to być dane...
Przejrzyj dobrze kod. Ostatnią funkcję masz "zaremowaną". [syntax=vb]'Call GetOnlyGoodValues(x1, x2, x3, x4, x5, x6, x7, x8, x9)[/syntax] Wewnątrz GetOnlyGoodValues wykonywane jest przeszukiwanie. Działa to dobrze bo sprawdzałem, ale generowanie czegokolwiek trwa baaaardzo długo. Zapis do komórek Excela mija się z celem o czym już pisałem. Właśnie dodałem...
Poszukaj informacji na temat sortowania bąbelkowego. Tak się składa, że w VB litery i łańcuchy też można porównywać. "b">"a", "Alicja">"Ala" itd Musiałbyś kopiować dane ze wszystkich kolumn wiersza do tymczasowej tablicy, co pokazałeś że potrafisz już robić. Sumowanie najlepiej zrobić funkcją SUMA.JEŻELI. W VB Aplication.WorksheetFunction.SumIf(argum...
Witaj. Nie piszesz, w jaki sposób chcesz tego inputboxa użyć, więc nie wiadomo, dlaczego nie działa. Najlepiej zamieść przykładowy arkusz, będzie też wtedy wiadomo, w jaki sposób są wpisywane dane do tej tablicy.
Skoro raport ma 300000 wierszy, to zmienna i musi być zadeklarowana jako long. W którym miejscu Twoje makro się zatrzymuje? A tak w ogóle to zamiast mozolnego porównywania każdej komórki z elementami tablicy przy pomocy pętli to poszedłbym w sprawdzenie przy pomocy odpowiednika arkuszowej funkcji PODAJ.POZYCJĘ czy wartość danej komórki jest w tablicy....
Sprawa jest trochę skomplikowana, bo hiperłącza w Excelu nie lubią sortowania, a sortowanie nie przesuwa odpowiednio hiperłączy. Do tego jeszcze funkcja HIPERŁĄCZE nie obsługuje tablic, tylko pojedyncze komórki. Być może jest to do zrobienia z wykorzystaniem funkcji LAMBDA, nie próbowałem, ale obawiam się, że mogłoby to być dość powolne rozwiązanie....
Jak masz 2-3 takie dane to nie ma problemu, takie rozwiązanie jest najszybsze, ale jak masz tego więcej 20-30 i wiecej to już w kodzie zaczyna robić się śmietnik. Potem jak chcesz tego użyć w kilku plikach to jeszcze musisz potworzyć do każdej zmiennej eksporty. Chowając wszystkie dane do tablicy tworzysz zgrabną konstrukcję , eksportujesz tylko deklaracje...
Tak prawie. Nie musi zliczać wierszy i podawać liczby porządkowej kolejno, a skopiowane tablice powinny być wklejone jako wartości.
Czy rzeczywiście masz tak w pliku, ze separatorem jest przecinek, ale nie każdy? Z tym to chyba zaden automat nie poradzi. Makro owszem, ale będzie brzydko.
No właśnie takie mam założenia projektowe, tablice prawdy dla A0 i A1 mam daną. Pozostaje porobić makra i skleić oba układy:) Jak coś mnie wkurzy to pewnie spróbuje z demultiplekserami :)
Załączam ten program. Niestety jest to działająca wersja (czyli operuje na dyskietkach)... Tej przejściowej, która skasowała mi FAT niestety nie mam :(. Program składa się z 3 plików, z czego dwa to moduły programu, a jeden to makra. Dziękuję za zainteresowanie :).
Można wysłać dane za pomocą RS232 bezpośrednio do EXELA . Wystarczy napisać makro w exelu.
Witam, Ja znam i używam jednej z czterech metod wyszukiwania danych. 1. z wykorzystaniem funkcji FIND() 2. z wykorzystaniem pętli FOR 3. z wykorzystaniem pętli FOR EACH 4. (niezałączona) z wyszukiwaniem binarnym na posortowanych danych Trzy z nich załączam w pliku "testowym". Znajduje się w nim 10.000 losowych, nieposortowanych rekordów: firma, miasto,...
Witam, potrzebuję wstawić do makra funkcję wyszukaj.pionowo, jednakże adres do tablicy zawiera datę, więc wygląda: "\\comp1\dane\" & "Dane " & Format(Now, "dd-mm-yy") & ".xls"" Problem jest w tym, że nie mogę takiej formuly wstawić jako adres tablicy, ponieważ występuje błąd. Jak można to obejść ?? Pozdrawiam
Moim skromnym zdaniem niepotrzebnie aktywujesz kolejne obiekty. -szukanie pierwsze pustej najlepiej zrealizować przez skok z ostatniej komórki kolumny: end(xlUp).row +1 (nagraj Ctrl+strzałka w górę). Szkoda czasu na pętlę. -arkusz można sortować odwołując się do nazwy/indeksu (nie musi być aktywny) Najwięcej czasu pochłania zapewne kopiowanie i tu nic...
Zmiany wymaga warunek rozbijający i pobierający linię. Powinien być taki: [syntax=vbscript]If pobierz Then 'pobieranie linii tabl = Split(linia, " ") 'separator pól w linii = spacja If UBound(tabl) > -1 Then wswyn.Cells(r, 1).Resize(1, UBound(tabl) + 1) = tabl 'kopiowanie danych z tablicy do komórek pobrano_linii = pobrano_linii + 1 r = r + 1 End If...
(at)robiw Jest kilka wyjść. Użyć makra GETFARADDRESS zamiast &, lub użyć przestrzeni __memx i zapomnieć o problemach, w tym o makrach progmem, ewentualnie użyć przestrzeni __flash, __flash1 itd. tylko wtedy trzeba ręcznie poustawiać dane w kolejnych 64kB blokach.
Witam wszystkich, Mam problem z poprawnym użyciem funkcji Range przy wczytywaniu danych z innego pliku. Wczytanie danych w postaci: Dane = PlikŹródłowy.Sheets("Wyniki zbiorcze").Range("A1... Działa bez żadnego problemu. Dlaczego nie mogę wczytać danych przy użyciu opcji zakresu w postaci? Dane = PlikŹródłowy.Sheets("Wyniki...
Taa, ci francuzy co tydzień zmieniają swoje poprawne znaki. Jedno z: 1. Zrób sobie kolekcje tychże tablic. 2. Zapisz sobie makro w którym otwierasz inny plik i robisz kopię komórki A1, będziesz mieć kod.
Piszesz, że jesteś początkujący więc będzie Ci trudno zrozumieć wyjaśnienie bez znajomości przynajmniej wskaźników i tablic. Przeczytaj najpierw podręcznik dla tej funkcji - [url=http://www.cplusplus.com/reference/... Funkcja wpisuje do zmiennej "bufor" (tablica znaków - cstring) odpowiednie dane (godzinę) ale żeby nie...
Z tą aktualizacją to znowu jakieś nieporozumienie. Jeśli dane będą się często zmieniać, ale sposób ich obróbki będzie niezmienny, to należy stosować formuły i przeliczanie automatyczne. Wtedy sam Excel zadba o to, by wszystko było aktualne. Jeśli wpisujesz do komórek wartości, to w domyśle te dane nie powinny się zmieniać, albo na tyle rzadko, żeby...
Zauważyłem pewną specyfikę dla zwykłej tablicy makro nie działa jedynie dla pozycji nieparzystych w tablicy... Dla parzystych rzutowanie działa jak należy... To sugeruje błąd dostępu do źle "wyrównanych" danych w pamięci - zmienne o długości 2 bajtów powinny być umieszczone w pamięci pod parzystymi adresami. W tablicy elementów typu char, przy próbie...
Spróbuj takie coś: [syntax=vb] Sub Makro1() ' ' Makro1 Makro ' Makro zarejestrowane 2012-12-16, autor Darek ' Dim maxIndex, x, y As Integer Range("B1").Select Selection.End(xlDown).Select maxIndex = ActiveCell.Row Dim tablica() As Single ReDim tablica(maxIndex) For x = 1 To maxIndex tablica(x) = Cells(x, 2).Value Next x For x = 1 To maxIndex For y =...
1. pobiera listę plików .xlsx w folderze 2. usuwa zakładki, tworzy nowe i orzenosi dane z pobranego pliku z folderu 3. przenosi dane z jednej zakładki do finalnej KOR 4. przenosi poszczególne wiersze z zakładki RAT do zakładki KOR do tego samego wiersza jako kolejne kolumny 5. tworzy nowy plik z danymi z zakladki KOR, zapisuje i przechodzi do pkt 1...
Do wywołania reakcji na wprowadzane do arkusza dane (odpowiedzi na pytania) wykorzystaj procedurę zdarzeniową arkusza: Target - Komórka podlegająca zmianie. W konstrukcji z ".Cells(1,1)" odnosi się do komórek scalonych Intersect - Sprawdza czy "Target" i komórka mająca wywoływać określoną reakcję, to jedna i ta sama komórk, czy też nie Jeśli ta sama...
excel makro tablica makro aktualizacja danych makro wstawianie danych
światełko choinkowy baterii neonówki budowa podczerwień
radio navigation blaupunkt radio nawigacja
Benincà BOB 30 Motor Noisy After Installation – Noise Causes & Fixes Toyota radio 86140-47050 brak dźwięku – diagnostyka, końcówka mocy, wzmacniacz JBL