Co do przycisku wywołujacego makro. Jeżeli masz więcej arkuszy i będzie to w nich wykorzystywane to kod umieść w module. Menu - Widok - paski narzędzi - Visual Basic. Na tym pasku wciśnij Edytor Visual Basic. Otworzy ci się edytor makr. Po lewej stronie będzie okienko "project -VBA project" . Znajdź pogrubioną nazwę twojego skoroszytu i prawokliknij...
Dzień dobry jeszcze raz, Chwilę to trwało, bo jak zacząłem dodawać swoje funkcje "słownie" stwierdziłem, że procedura Staz nie jest doskonała i uznałem, że warto ją podmienić na coś innego. Zapewne dałoby się ją poprawić, ale to już pozostawiam Autorowi, jeśli uzna za celowe. Niestety w VBA nie ma takiej wygodnej funkcji jak półoficjalna DATA.RÓŻNICA...
Witam! Jestem tu nowa, więc bardzo proszę o wyrozumiałość i pomoc. Mam dwa pliki (dokument A i dokument B). W dokument A mam Arkusze o nazwach od A do L- wszystkie mają identyczny układ. W dokument B jest tylko jeden arkusz w którym w kolumnie C "wymienione" są kolejno wszystkie arkusze z dokument A. Moje pytanie czy istnieje możliwość zaprogramowania...
...i teraz tak, potrzebuje obliczyc procentowe zmiany wartosci z miesiaca na miesiac. innymi slowy, chcialbym pozbyc sie wszystkich danych oprocz tych z ostatniego dnia kazdego miesiaca... Nie do końca wiem o co ci chodzi. Procentowe zmiany z miesiąca na miesiąc a procentowa zmiana ostatniego dnia miesiąca to trochę co innego ale jeżeli chcesz tylko...
Wykorzystaj Wyszukaj.pionowo() lub podaj.pozycję() w obu przypadkach z zerem jako ostatni argument. Jeżeli danego nr pesel nie będzie na drugiej/przeszukiwanej liście, funkcja zwróci błąd (#N/D). Czyli gdzie będzie błąd tego numeru pesel brakuje. Edit --------------------------- Teraz zerknąłem co zaproponował kolega Yogi - czyli to samo tylko bardziej...
Na wstępie zaznaczę że jestem na forum jeszcze chwilkę i znów może mnie nie być dłużej więc zapewne nie pomogę za dużo. Ale może inni na forum poprowadzą. Wcześniej pisałem tylko że zasada będzie podobna. W tamtym przypadku: Aktualizuj - na podstawie umów ogółem tworzy arkusze i rozdziela umowy od początku dla każdego arkusza/umowy. Wprowadź - ostatnią...
Dzień dobry, Nie można było z tym przykładem od razu? Po pierwsze - w funkcji WYSZUKAJ.PIONOWO drugim argumentem jest zakres danych. W tym zakresie danych w pierwszej kolumnie szukamy nazwy towaru, a z drugiej kolumny odczytujemy jego cenę. Zakres danych znajduje się w innym arkuszu, dlatego do jego zdefiniowania wygodnie posłużyć się nazwą, która będzie...
Załączonego pliku testowego nie udało mi się otworzyć. Ale jeśli rozumiem treść wpisu, to chodzi Ci o formułę, więc kod VBA nie powinien tu mieć nic do rzeczy. Przykładowe formuły w załączniku. Funkcją, która uwzględnia użycie filtra jest funkcja SUMY.CZĘŚCIOWE. Można jej użyć w powiązaniu z WYSZUKAJ.
Teraz wszystko jasne. [syntax=vbscript]Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 2 Then Application.ScreenUpdating = False Plik = "C:\PlikiSpraw\" & Range("A" & Target.Row) & ".xlsx" If Dir(Plik) <> "" Then Rows(Target.Row).Copy Set s = Workbooks.Open(Plik) nw = s.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Row...
Jeśli dobrze zrozumiałem chodzi o coś takiego: [syntax=vb]Sub FirstAndLast(ByVal c As Integer, ByVal cellRow As Integer, ByVal cellCol As Integer) Dim i As Integer Dim first As Integer Dim last As Integer lastindex = Cells(ActiveSheet.Rows.Count, c).End(xlUp).Row For i = 1 To lastindex If first = 0 And Cells(i, c).Value <> "" Then first = i End...
Nie musi być ostatnia, ale tak było w przykładzie. Przykład powinien być adekwatny do rzeczywistych danych, a nie warto komplikować kodu "na wszelki wypadek".
Zmienit 'For i = 0 To nrep - 1' na 'For i = 1 To nrep - 1'
Dobry wieczór, Zastosowana funkcja ILE.NIEPUSTYCH (COUNTA) pomija przy zliczaniu tylko komórki faktycznie puste, a te które zawierają formułę już nie są puste (nawet jeśli formuła zwraca pusty tekst). Inaczej zachowuje się funkcja LICZ.PUSTE (COUNTBLANK), która zlicza nie tylko komórki faktycznie puste, ale również te, które zawierają puste teksty....
Gdy w arkusz1 dopisuje dane data automatycznie zmienia się w arkusz2. Czy coś takiego jest w ogóle możliwe przy zastosowaniu formuł? Dawniej to była uniwersalna odpowiedź: "Tak to można tylko w ERZE" :D Dziś już ERY nie ma - i sam musisz sobie odpowiedzieć czy jesteś w stanie przewidzieć formułę na przyszłość - choćby jakich (nazwa) będziesz miał klientów...
Jeśli dobrze zrozumiałem Twoje potrzeby :?: To efekt taki jak na zrzucie 1011231 tzn. po wpisaniu numeru kontraktu zakupu makro automatycznie wyszukuje "wstecz" (tzn. do góry :D ) czy już wystąpił taki numer i jeśli tak - to wprowadza do kolumny D ilość pozostałą z wcześniejszej transakcji :spoko: 1011234
Uparłeś się przy tej hulajnodze. Jeśli koniecznie chcesz w taki sposób, to spróbuj takiego kodu: [syntax=vbscript]Sub Podstaw_kolejne_liczby() Dim lw As Long, n As Long, a As Variant Dim rng As Range, found As Range lw = Range("A" & Rows.Count).End(xlUp).Row 'numer ostatniego wypełnionego wiersza Set rng = Range("A1:A" & lw) Set found = Range("A"...
:) 8-) Bez przesady. 8-) to ułamek mojej wiedzy 8-) :) Nie no ... oszukuje :) Na poważnie: Miło że Ci się podoba ale kod makra nie jest zbyt ambitny. Może ktoś zrealizuje to prościej ale niestety mam kocioł w pracy i muszę się "wyłączyć". (ostatecznie pomagać wieczorami) W załączeniu poprawki. Zapomniałem wspomnieć Arkusz "Zlecenia" ma się tak nazywać...
[syntax=vb] Sub DelDupl() With Sheets(1).Range("A:B") r = 2 While .Cells(r, 1) <> Empty If Application.CountIf(.Columns(1), .Cells(r, 1)) > 1 Then .Rows(r).Delete shift:=xlUp r = r - 1 End If r = r + 1 Wend End With End Sub [/syntax] jeszcze nie jest dobre?
Zmień ostatni argument funkcji MATCH. No i z tym And też coś się nie klei: 1 )
"Zwykłym" WYSZUKAJ też można.
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...
Ja w tym kodzie błędów nie widzę - makro działa tak, jak je zapisałeś. Nie kończy się na wierszu 16, tylko ponieważ jest ono uruchamiana w zdarzeniu Change komórki, polecenie wpisujące coś do komórki: [syntax=vb]... Cells(c.Row, 12) = DateAdd("m", Cells(c.Row, 9), Cells(c.Row, 11)) ...[/syntax]powoduje ponowne wywołanie zdarzenia zmiany (co może wyglądać...
(...) lko wartości liczbowe, czy również daty? Są tam wartości liczbowe. AI: Z jakiej wersji programu Excel korzystasz? Czy używasz jakichś dodatkowych narzędzi lub dodatków, które mogą wpływać na formuły? Nie używam żadnych dodatków. Jeśli jakieś byłyby potrzebne do rozwiązania zadania proszę o informacje. Bezpośrednia odpowiedź na pytanie Aby stworzyć...
Na początku musisz ustalić długość kolumny, którą będziesz przeszukiwać tzn. ostatnią niepustą komórkę. Możliwe jest to za pomocą: Application.WorksheetFunction.CountA(... Do wyszukania wartości użyć można: Selection.Find() Cały wiersz zaznaczasz za pomocą: Rows().Select Zaznaczony wiersz kopiujesz: Selection.Copy Wklejasz: Range().Select...
Ja zastosowałbym zwykłą sumę warunków: SUMA.WARUNKÓW($F:$F;$A:$A;$H6;$B:$B;I$4) w pierwszej komórce zakresu. Suma iloczynów nadmiernie męczy komputer (w każdym razie mój :) ). Natomiast w komórkach I41:I71 zwykłą sumę I6:L6 ... I36:L36 Ponadto datę w ostatnich dwu wierszach kolumny dni (H35 i H36 oraz H70 i H71) warto dodać jeszcze jeden warunek, żeby...
To zdaje się, że najlepiej będzie umieścić kod w ThisWorkbook. Np [syntax=vb]Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Not Intersect(Target, Sh.Range("B8:AK8,A16:AK16")) Is Nothing Then MsgBox Date & " " & Application.UserName End If End Sub[/syntax]Wartości wyświetlane w przykładzie przez MsgBox przypisz...
Pozostało mi jeszcze zrozumienie tego kodu może komentarze będą pomocne :) [syntax=vbscript] Sub Zakresy() Dim ark As Worksheet Dim i&, j&, w& ' deklaracje zmiennych Set ark = ThisWorkbook.ActiveSheet ' utworzenie zmiennej obiektowej w = ark.UsedRange.Rows.Count + 1 ' określenie ostatniego wiersza powiązanego z ilością iteracji pętli i...
Jeżeli kod ma postać liczby (da się przekształcić w liczbę), to Excel to robi przed użyciem funkcji SUMA.JEŻELI lub podobnej. Ponieważ liczby w Excelu mają najwyżej dokładność 15 cyfr znaczących, to takie długie kody (18 cyfr) są zaokrąglane i tracą ostatnie cyfry. Jeśli znaki na początku kodu są identyczne, to można zrobić tak jak zaproponował dt1...
Powiem tak: przeczytaj jeszcze raz mój ostatni post #8 (tak od połowy) i porównaj z tym, co masz. Obecnie każdy z 4 argumentów funkcji WYSZUKAJ.PIONOWO (tej z ostatniego załącznika) masz zły :) Grunt, to dobrze zrozumieć tą funkcję: może Wyszukujemy wartości komórki (dajmy na to) U17; przeszukiwany zakres to Y6:AC59 i szukam tego w kolumnie 1. Czy tak?...
Chcesz znać wartość ostatniej danej? To po prostu wartość ostatniej komórki w kolumnie: [syntax=vbscript]MsgBox Cells(Cells(Rows.Count, "A").End(xlUp).Row, "A").Value[/syntax]
jest "po staremu. A zwróciłeś może uwagę, że po wykonaniu takich czynności jak poniżej wszystko jest "w porządku" (?) ... :) ... : 1. Kolumny w arkuszu wciąż mają nieokreśloną szerokość w opcji Format\Kolumna\Szerokość Zaznacz cały arkusz i nadaj kolumnom jakąś wartość - domyślnie to 8,43 2. W opcji Format\Kolumna\Standardowa szerokość wciąż jest '0'...
Program masz "prawie" gotowy. Pomyśl, potrzebujesz odwołać się do Nr wiersza komórki spełniającej kryteria (tutaj zmienna "abc", zadeklarowana jako 'Range'). Będzie to wartość właściwości 'Row'. Następnie należy znaleźć lub określić Nr ostatniej w wierszu. Zadziałaj podobnie (metoda End), jak masz to z licznikiem pętli. Pozostaje przeliczenie (wymnożenie)...
Tak, funkcja lewy kopiuje od początku. A jak chcesz ze środka to możesz skorzystać z funkcji fragment.tekstu . Opisy tych funkcji i przykłady użycia są w pomocy, więc nie warto się za bardzo o nich rozpisywać.
Jeśli to jest nowy Excel, to najlepiej sprawdzi się tu nowa funkcja WYBIERZ.KOLUMNY. Tylko dlaczego ta ostatnia kolumna ma nagłówek "n", a nie liczbowy? To jest arkusz kalkulacyjny, w którym dane powinny być przede wszystkim liczbowe. Teksty pomieszane z liczbami, to jest dodatkowy kłopot. Co oznacza to "n"? Nie można go zastąpić liczbą? Tu można sobie...
wpisywane "ręcznie", a nie poprzez formuły - jak ogarnąć drugą część mojego problemu? Żeby wykorzystać makro zdarzeniowe :D to proponuję wykorzystać jednak inną kolumnę np. wolną obecnie kolumnę A :spoko: . W załączonym pliku proponuje w przedostatniej komórce kolumny A wprowadzić wartość 1 , a wówczas cały ten wiersz (od B do AH) zostanie wstawiony...
Ale można szybciej. w komórce C2 wpisać = jeżeli(A2="";C1;A2) zatwierdzić enterem ponownie "stanąć" na komórce C2 i nacisnąć kopiuj. zjechać prawym paskiem przewijania na sam dół (ważne by tam była cały czas zaznaczona komórka C2) Przytrzymać klawisz Shift wskazać myszką ostatniąprzy danych komórkę w kolumnie C (zaznaczy się cała kolumna) Prawoklik...
Jestem początkująca w programowaniu vba... ...Potrzebuję wsparcia! Może ze względu na okres Świąteczno - Noworoczny mam ciężką zatrybkę. To co w cytacie zrozumiałem. Z resztą mam problem. Nie wiem czy dobrze zrozumiałem, ale na próbę zamień wiersz: ActiveCell.Copy Destination:=Cells(ostatniekryte... kolumna) na: Cells(ostatniekryteria,...
Sprawdź makro, które podałem Ci ostatnio. W Twoim jest pewien błąd. Otóż, jeżeli komórka A6 zawiera produkt który był w drugim arkuszu na pozycji B4, to makro nie wejdzie do pętli i zmienna y nie zostanie zdefiniowana. Druga sprawa, to przeszukiwanie kolejnego produktu, B5, B6 itd. W Twoim makrze nie ma zmiennej, która decydowałaby kiedy zaprzestać...
Najprościej nazwać arkusze i odpowiednio ustawić je na pasku zakładek. Ten z sumą nazwij "Suma" i ustaw go jako pierwszy z lewej. Pierwszy ze składnikiem/składnikami nazwij "Pierwszy", ostatni "Ostatni" Jeśli nowe arkusze będą wstawiane pomiędzy "Pierwszy" i "Ostatni", wystarczy Np taka formuła Dodano po 13 :arrow: markoz7874 A jeśli zakres będzie wielokomórkowy?...
[syntax=vbscript]ostatnia = Columns("C").Find("*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows, LookIn:=xlValues).Row[/syntax]
Intersect(Target, Columns(...)) zwraca zakres komórek typu Range(), będący wspólną częścią - w przypadku zdarzenia Worksheet_Change - obszaru, który uległ zmianie (Target) oraz wybranej kolumny (Columns(...)). Tym obszarem który uległ zmianie (Target) może być tylko jedna komórka (np. kiedy wpisujesz w nią wartość ręcznie), ale też zakres komórek (np....
Makro reaguje na zmianę wartości w komórce. Jeśli pierwszy wiersz jest "FPS", określa ostatnią komórkę z wartością w kolumnie. Począwszy od 2 wiersz do ostatniej wartości koloruje. Dodano po 16 Oto mały fix, gdyby w zakresie niewypełnione komórki Dodano po 11 Czy chcesz malować kolumna E, ale "FPS" w innej kolumnie(np. B)? Wtedy byłoby inne podejście...
Powinnaś dokładnie opisać swoje dane, a poza tym trzeba mieć świadomość istnienia dwóch zasadniczych algorytmów wyszukiwania: dokładnego i przybliżonego. Algorytm dokładny działa w ten sposób, że szuka dokładnie poszukiwanego wzorca i jeśli go nie znajdzie zwraca błąd. Jeśli wzorzec występuje wielokrotnie - zwraca pierwsze wystąpienie. Dane do tego...
Ostatni, opcjonalny argument funkcji ustaw na PRAWDA, tabela musi być posortowana.
Pomijając literówkę w przypisaniu, zamienione argumenty w Cells(row, column), zakręcony wybór kontrolki w pętli, to zdaje się coś za dużo tych pętli. Po modyfikacji http://obrazki.elektroda.pl/3585684200_1...
Wartości ujemne: Najlepiej skorygować przy imporcie, wystarczy kilka poprawek w istniejącym makro[syntax=vb]Sub kopiuj_z_pliku() Dim kom As Range Windows("plik importu.xlsm").Activate 'wskazane wybranie właściwego arkusza Range("A2:K1000").Select Selection.Copy Windows("rozliczanie palet.xlsm").Activate Sheets("Import").Activate 'dodałem Range("A3").Select...
Jak widać nie każdy lubi łowić ryby ;P Zwiększasz tylko numer dla ostatniej pozycji - dla VBA to co masz w komórce nie jest liczbą,a tekstem. Musisz go najpierw rozdzielić funkcją Split() po myślniku, następnie w ostatnim elemencie tablicy zwiększyć liczbę o jeden i na koniec - "skleić" tablicę na powrót w wymaganym formacie. Jak przedmówca wspomniał...
2 – Jest możliwe aby w kolumnie Kartony była podświetlona komórka zawierająca najwyższą wartość ALE z wyłączeniem tras zaznaczonych jako Anulowano i Przeniesiono? Ustawiłęm dla całej kolumny formatowanie Warunkowe -> Reguły dla pierwszych/ostatnich -> 10 pierwszych elementów i zmień z 10 na 1. Sprawdziłem, oznacza na czerwono (można zmienić)...
Napisałeś się, napisałeś, a pewnie i tak bez załącznika mało kto się w tym połapie... Ja też po którymś tam warunku wysiadłem, ale z tego co piszesz, to są proste operacje, tylko musisz zastosować kilka pętli. - zacząć możesz od zadeklarowania skróconej wersji arkuszy: [syntax=vb]Set wsrap = ThisWorkbook.Worksheets("Raport") Set wswyn= ThisWorkbook.Worksheets("Wynik")[/syntax...
Tak, tak rozumiem tylko jak to sie mówi: " A u mnie to działa normalnie " ciekawe od czego to zależy... ?hmm Niestety Excel to wredny typ. Pusta komórka czasem nie jest pusta a tego nie widać i wiele innych podstępów Micro$hita ... potestuje u mnie jeszcze i dam Ci znać jak coś wyknuje jeszcze Pozdrawiam .... a rzeczywiście .... zwielokrotniłem twoje...
Za dużo kombinujesz ;) Wszystko można zmieścić w takim oto kodzie, komentarze - bez zbędnych dywagacji - w kodzie :) Mam nadzieję że zasadza działania jest jasna? W zasadzie to tylko pętla po wierszach i kolumnach + parę if'ów tłumaczących format excela na worda. "Sekret mnicha" tkwi w tym, żeby ustawić format paragrafu w Wordzie przed wypisaniem tekstu,...
zwraca ostatni warto excel ostatni wiersz excel ostatni wartość
kyocera licznik wydrukowanych stron nawigacja transmiter vscan samsung
regulacja beretta kompakt satel perfecta
Odpowietrzanie układu chłodzenia Audi A8 TFSI 2018 Schemat magnetowidu Aiwa HV-DK510 MkIIKE - gdzie znaleźć?