Nowa propozycja: [syntax=vbscript]Sub Wypełnij() Dim ost As Long ost = Range("B2").End(xlDown).Row ' ostatnia komórka wypełniona w dół ' ost = 2000 Range("A2").FormulaLocal = "=H2&B2&D2" 'to można pominąć, a formułę wpisać ręcznie Range("A2").AutoFill Destination:=Range("A2:A" & ost) Range("E2").FormulaLocal = "=C2&"" ""&D2" 'to można pominąć, a formułę...
Witam, Jestem totalnym amatorem w pisaniu makra i utknąłem w miejscu. Problem polega na tym, że potrzebuję aby ostatnia wypełniona komórka z kolumny A została skopiowana do końca danych w kolumnie B. Za każdym razem będzie różna ilość wypełnionych wierszy w kolumnie B dlatego nie mogę ustawić zakresu na sztywno, a jak nagrywam makro to właśnie tak się...
Podmień Jak zwyklę w punkt :) dziękuję . Działa Jeszcze ostatnia rzecz i stawiam kratę dobrego piwa ! A czy można (pewnie można) dołożyć warunkowanie które będzie uruchamiało różne makra na podstawie zawartości kolumny A w aktywnym wierszu. Wpisując w kolumnę D=AWARIA lub SPRAWNY lub WARUNKOWO , VBA sprawdza co widnieje w kolumnie A i na podstawie...
Witam wszystkich forumowiczów, mam pytanie związane z Excelem 2013, a mianowicie czy mogę uaktywnić przycisk wykonujący makro z listy drop box. Bardziej dokładnie opisując: mam kolumnę z komórkami wyboru listy drop box i jeśli wszystkie są wypełnione to ostatnia komórka jest zdefiniowana jako drop box tak lub nie. Jeśli jest wybrane Nie to nic się nie...
Witam. Poszukuje informacji jak napisać makro lub przykładu takiego makro które przeszukiwałoby kolumnę A i jeżeli znajdzie dwie lub więcej komórek które mają ten sam numer (przykład numeru: 1.1.15.202) gdy znajdzie chciałbym by wówczas dodało do siebie wartości z tych wierszy (wiersz zawiera 12 komórek) gdzie są wartości liczbowe, dodam że nie wszystkie...
Jeszcze mam drugie pytanie, w którym momencie trzeba zastosować ? To był tylko przykład żebyś zrozumiał jak działa pętla. Do komórek się odwołujesz .cells(numer wiersza, numer kolumny), są też inne sposoby, ale na razie stosuj ten. Pętlę zastosuj jakąkolwiek np: [syntax=vbnet] dim a as integer a=1 Set a1 = ThisWorkbook.Sheets("Arkusz1") Set a2 = ThisWorkbook.Sheets("Arkusz2")...
:) Ale nie ma tego złego ... Ściągnąłem od ciebie metodę sprawdzenia ilości wierszy. Do tej pory zawsze robiłem to w pętli warunkowej dopóki ostatnia komórka nie była pusta. Tak samo tu chciałem zrobić. A tak w jednym wierszu kodu można zamknąć takie sprawdzenie. :) Miło tak czerpać wiedzę. I ta nuta rywalizacji. :) No ... idę spać.
Musiałbyś zmienić licznik pętli zmiennej wiersza: For k = 1 To ostatnia komórka Range(wiele_kolumn).End przeszukuje tylko skrajną, lewą kolumnę. Wyszukuj od pojedynczej i najlepiej od dołu (jeśli zdarzają się "okienka"). Np ostWrs=Range("B65536")>End(xlup).row Inne sposoby ostW=ActiveSheet.UsedRange.Rows.Count ostW=Columns(2).Find("*", SearchOrder:=xlByRows,...
Dzień Dobry Zwracam się do wszystkich uprzejmych i chcących pomóc osobie która zaczyna przygodę z makrami, ale zapotrzebowanie na dobre makro jest większe niżwiedza moja w obecnym czasie. Nie proszę o zrobienie gotowca tylko wskazanie błędów, lub o podpowiedź co mam zmienić w pliku którym się posiłkuję by : ad.1 W arkuszu Dane na zielono ( brane pod...
DZIĘKUJE BARDZO, BEZ POMOCY NIE UDAŁO BY MI SIĘ WYKONAĆ TEGO ZADANIA. W projekcie pozostało mi jeszcze kilka spraw tzw. kosmetycznych. Choć jak dla mnie nie do ogarnięcia I tak: Arkusz rozszerzyłam i ma teraz 18 kolumn (A:S) ---> kolumny automatycznie się dostosowywały do zawartości (tutaj chyba użyteczna będzie Columns ("1:18").AutoFit);...
Nagraj makro.
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...
No to z prawej go [syntax=vb]Sub ostSpacja() tekst = "proba " tekst = RTrim(tekst) End Sub[/syntax]
Edytowałem ostatni post i jest tam odpowiedź na ostatnie pytanie.
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ć...
Jak zmieniłeś nazwy arkuszów ("Arkusz1" to teraz "BAZA" a "Proszki" to "MAŁE") to w całym kodzie makra trzeba je zmienić, a nie tylko w jednej linii. Poza tym (nie chce mi się tego mocno analizować dlaczego) ale makro odczytuje ostatnią pustą komórkę w kolumnie B arkusza "Dane" jako "zapisaną". Nie wiem czego - może ktoś z kolegów wyjaśni. Dlatego dołożyłem...
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...
Są różne sposoby na znajdowanie ostatniego pustego wiersza, mój ulubiony jest taki: widoczną komórkę w kolumnie B wypełnioną tekstem, idąc od ostatniego wiersza w górę. Liczba 1048576 to ostatni wiersz excela 2007, dla kompatybilności z 2003 należało by użyć 65536. Przed wykonaniem sprawdzania poleceniem ShowAllData próbuje się zdjąć kryteria autofiltra...
W załączniku przykład dwóch (tych łatwiejszych) metod. Trzecia, najszybsza, działałaby tylko z kalendarzem (tj. od 1-go do ostatniego dnia m-ca). Dla porównania (i nauki) zostawiłem nagrane makra w 'Module1'.
Powiedzmy że działa - potestuj. Trochę info o pliku: Podstawa: Makro sprawdza w nagłówku (w wierszu drugim) gdzie jest tekst "Zadanie" i "Grupa interwencyjna" jak również w wierszu trzecim szuka ostatniej niepustej komórki. (po tym rozpoznaje ile jest poszczególnych kolumn. Jeżeli zmienisz nazwy dodawać dowolną ilość kolumn do zadania i do pracowników....
Lzep :arrow: Z fotki wynika wszystko jasno, chyba że ktoś nie miał do czynienia z Excelem i dartem ... tomi1972 :arrow: Excel działa domyślnie w trybie natychmiastowego przeliczania formuł. Bez odpowiedniego makra nie da się zrobić tego co oczekujesz. Usuwając sumy pośrednie (F2 i J2) wartość zawsze będzie "wracać" do 501. Napisałem proste makro sumujące...
Zakładając, że makro uruchamiasz przy aktywnym arkuszu wynikowym, konstrukcja powinna wyglądać mniej więcej tak ostWrs = tu szukamy ostatniej niepustej komórki w arkuszu wynikowym For Each sht In ThisWorkbook.Worksheets If sht.Name <> "tu nazwa arkusza wynikowego" Then ostWrsArk = tu szukamy ostatniej niepustej komórki w arkuszu źródłowym...
Na podstawie pliku czas_pracy.xls przygotowałem przykładowe makro. W skoroszycie czas dodałem w komórce A2 ilość pracowników wyszukaną funkcją =ILE.NIEPUSTYCH(A3:A5000). Dodałem nowy skoroszyt "Warunek" w którym znajdują się komórki z funkcjami wyszukującymi interesujące nas godziny : =BD.MIN(dane!$A:$D;C$1;$A$1:$B$2) i =BD.MAX(dane!$A:$D;D$1;$A$1:$B$2)...
Propozycja makro łączącego komórki tak jak chciałaś. Makro wykorzystuje dane z kolumn H i I, zastępuje formuły w komórkach scalanych. Usuwa formuły w kolumnie J (aby umożliwić modyfikację danych w razie potrzeby). Nie ingeruje w formatowanie warunkowe, które było już ustawione w arkuszu. Makro jest zapisane w module uniwersalnym. Działa w arkuszu aktywnym....
Zlitowalem się nad VBA i wyrzuciłem formatowanie komórek/zakresu poza ostatnią pętlę, bo pierwotnie było wewnątrz. Reszty już nie poprawiałem. Trzeba jeszcze zwrócić uwagę na E1, bo sumowało daty (??)...
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...
Sprawa jest bardziej skomplikowana niż się na pierwszy rzut oka wydaje, bo Target.Value w zdarzeniu Change będzie też przyjmowało puste wartości (przy czyszczeniu/usuwaniu komórki), a także może być zakresem Range() np. przy kopiuj - wklej do kilku komórek (podobnie przy czyszczeniu zakresu komórek), przez co makro będzie się wywalać. Trzeba ew. je...
Albo rybki albo akwarium... Albo w komórce jest formuła albo wartość jest wpisywana ręcznie. Oczywiście można jeszcze użyć makra czy też dodatkową komórkę, która przechowuje dotychczasową wartość komórki B. To niestety też wymaga makra aby ustalić kiedy i która wartość komórki ma być tą "ostatnią". Nad tym musisz się zastanowić aby osiągnąć to co założono.
Opisz dokładniej okoliczności powstania błędu, żebyśmy mogli to odtworzyć. Najlepiej załącz plik. Załączam plik. Usunięta została tylko procedura sheet change zgodnie z Twoją sugestią. Skopiowanie jakiegokolwiek tekstu/wartości z przeglądarki i wklejenie go do komórki A2 nie powoduje żadnych problemów. Formatowanie zostaje ciągle takie samo. Podczas...
chciałbym żeby w raz z usunięciem danych w komórce, również usuwał się wiersz tabeli W przedstawionym rozwiązaniu usunięcie indeksu powoduje "wyczyszczenie" całego wiersza :cunning: (jakkolwiek do tego celu wykorzystano odpowiednie formuły w tym arkuszu :D ) - nie wiem jak duże (ile pozycji ?) oferty przygotowujesz dla Waszych klientów , jeśli więcej...
Wpisuję AU01, klikam "dodaj" i tekst mi się zmienia w komórce na AU02. itd. Do mojego istniejącego makra musiałbym dopisać odczyt wartości z komórki (ostatni znak - jeżeli jest nim cyfra), a następnie wprowadzenie wartości +1. 1. Czyli po AU09 ma być AU10 , czy AU010 ? 2. Czy zestaw znaków składających się na dany zapis jest skończony, czy mogą to...
Range("G6:G89").Select Jak go zmienić, żeby zakres brał pod uwagę wszystkie niepuste komórki w tej kolumnie? Więc tak, jeżeli chcesz, żeby z całej kolumny zaznaczył zakres składający się z niepustych komórek to będzie takie makro: Sub proba() Dim x As Double Dim zakres As String For x = 1 To ActiveSheet.Cells(ActiveSheet.Rows.C... "G").End(xlUp).Row...
Czemu nie załączysz przykładowego arkusza? Ten kod, który napisałeś ma niewielki sens, bo w pętli powtarzasz ciągle to samo. Po lewej stronie masz adres konkretnej jednej komórki, do której trafia wynik. A po prawej stronie zmieniasz zakres sumowania, ale wyniki trafiają i tak do tej samej komórki, więc się nadpisują i otrzymujesz w efekcie wynik ostatniego...
Lanzul a czym Twoje rady różnią się od moich? Dokładnie o tym samym pisałem. Ukrywane są kolumny od D (w vba jest makro które je ukrywa) czyli mają szerokość "0" oraz zablokowane są okienka. Powoduje to że w arkuszu wstawiana jest pionowa jak i pozioma czarna linia, która zakrywa obramowanie komórek.
... W mojej ocenie makro zapisujące powinno na końcu czyścić wpisy poprzedniej zmiany ... Słuszna uwaga ... ale nie za każdym razem, czyli kod w innym miejscu. Czyścić powinno się komórki tak, by wykonała to ostatnia zmiana, która będzie tam coś wpisywać, tak aby przed swoim wpisem miała informację o tym, że poprzednicy w ogóle coś wpisywali (bo może...
Rozumiem, że ten fragment "ow = Cells(Rows.Count, "F").End(xlUp).Row" powoduje to że makro wystartuje z ostatniej zapisanej komórki w kolumnie "F" a czy jest możliwość żeby wystartowało dokładnie z F3? Bo ten przykład to tylko wycinek arkusza i poniżej będą jeszcze dane. Dodano po 3 czy można po prostu napisać ow =Range("F3").Select ?
excel2016 przy ostatnim makrze nie uruchamia sie lista
Rozumiem że na google masz bana? ad 1. usuwa zbędne spacje ad 2. usuwa " OR " po ostatniej wartości.
Witam. W jaki sposób można makrem, zaznaczyć komórki obok wypełnionych? Dokładnie chodzi o to, że w kolumnie B, mam jakieś dane (mogą być też puste komórki między wypełnionymi) i chciałbym, aby makro zaznaczyło w kolumnie C, cały zakres, od wiersza 2 do ostatniego, który jest wypełniony w kolumnie B.
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...
To nie ma związku z formułami. W wierszu oznaczonym poprzednio komentarzem 4) zamiast lw było wpisane 12, więc pętla w ogóle się nie wykonywała (od 13 do 12 nie ma żadnej wartości). Poza tym ponieważ lw szuka ostatniego zajętego wiersza w kolumnie A, a w tym ostatnim wierszu była teraz formuła zwracająca pusty tekst, więc dodałem jeszcze w pętli warunek...
Przeczytaj w pomocy VBA Union
Widocznie "stop" nie jest ostatnią pustą... Spróbuj z wyszukiwaniem [syntax=vbscript]Sub Makro() Dim target As Range Dim wrs1 As Integer Dim ostWrs As Long Dim i As Long Set target = ActiveCell wrs1 = target.End(xlUp).Row On Error Resume Next ostWrs = Columns(target.Column).Find(what:="stop"... lookat:=xlWhole).Row If Err > 0 Then MsgBox "brakuje znacznika...
Pisząc kod jak poniżej: Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Target.Address = "$A$1" Then wszystko działa tak jak chciałem, ale tylko w zakresie podanej komórki. A czy można i jak zapisać aby działało w całej kolumnie? I jeszcze jedno pytanie: Wiersz = ActiveSheet.Cells(ActiveSheet.Rows.Count... "D").End(xlUp).Row -formuła wyszukuje...
Moje rozwiązanie wyglądałoby jakoś tak: [syntax=vb] Sub Makro1() ' ' Makro1 Makro ' Makro zarejestrowane 2013-05-12, autor Darek ' ' Const S1 = 8 ' najmniejszy przedział Const S2 = 16 ' sredni przedzial Const S3 = 32 ' najwiekszy przedzial Const D1 = 3 ' tolerancja sredniej najmniejszego przedzialu Const D2 = 5 ' tolerancja sredniej sredniego przedzialu...
Na twoim miejscu zacząłbym od rejestratora makr... W drugim przypadku, nagraj Ctrl+strzałka w dół.
Stoję przed ostatnim w zasadzie problemem mianowicie w jednym z pól mam taką formułkę: ='10-07-13'!C25+'11-07-13'!C24 która jak widać opiera się na pobieraniu wartości z pola z poprzedniego dnia+wartość z pola z obecnego dnia. czy mogę jakimś sposobem zmodyfikować tą formułe (lub powyższe makro) tak aby sama wiedziała że ma korzystać z zadanych pól...
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...
Ad.1 Jeśli makro jest w 'Thisdocument;, to nie. Jeśli gdziekolwiek indziej (moduł, normal, inny plik), to musi być nazwa lub indeks: 'Documents("nazwa").Tables(1)' Ad.2 To zależy. Jeśli tabelka ma zmienną ilość wierszy, a odwołujesz się do Np ostatniej, to: [syntax=vb]rw = Documents(1).Tables(1).Rows.Count kol = Documents(1).Tables(1).Rows(rw).Cells.Co...
Właśnie to pozwoliłem sobie zmienić w przesłanym przykładzie w makrze kolegi adamas_nt Wpisz zamiast ostatniWiersz = 100 to ostatniWiersz = Sheets("Arkusz1").Cell... 1).End(xlDown).Row Wtedy makro samo policzy ile jest wierszy i będzie się wykonywało tylko do ostatniego wiersza. Warunek dane w kolumnie...
makro komórka excel ostatnia niepusta komórka makro kopiować komórka
tuning sharan trafo 16mm2 brama blokuje połączenie sieci
siemens pralka instrukcja programator tango
Parametry diody SYR 250/SYK 250: prąd i napięcie Komputer uruchamia się po kilku próbach po instalacji Fortnite