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....
Jest w kodzie arkusza (nie w module). Procedur zdarzeniowych oraz 'Private' nie widać w menu 'Makra'.
Podobny sposób do zablokowania kontrolki - dający efekt "wyszarzania", ale samego tekstu - można uzyskać ustawiając właściwość Enabled kontrolki na False. Excel faktycznie nie obsługuje wyszarzenia całej kontrolki, chyba że jej BackColor zmienisz ręcznie ;).
[syntax=vb]For i = 3 To 31 Select Case i Case 3 To 7, 12 To 27, 30, 31 '[dzialanie] End Select Next [/syntax]
Witam, mam pytanie jak rozwiązać następujący problem mam komórkę, która przyjmuje określoną wartość np. 4 chciałbym, żeby makro pobrało tą wartość i wykonało jakąś czynność tyle razy ile jest wpisane w tej komórce np: ActiveWorkbook.Sheets("Zes").Activate Range("A2").Select Do If IsEmpty(ActiveCell) = False Then ActiveCell.Offset(1, 0).Select End If...
Uruchom poniższy kod w aktywnym Arkuszu3 [syntax=vb]Sub z() Dim iLstRw% Dim iLstNmRw% Dim rRng As Range j = 3 With Sheets("Arkusz1") iLstNmRw = .Cells(Rows.Count, 6).End(xlUp).Row Set rRng = Range(.Cells(6, 6), .Cells(iLstNmRw, 6)) End With iLstRw = Cells(Rows.Count, 1).End(xlUp).Row For i = 7 To iLstRw rRng.Copy Destination:=Cells(j, 9) Range(Cells(j,...
Będę bardzo wdzięczna za pomoc Na forum jest wiele podobnych przypadków. Proponuję nagrać makro, a następnie użyć metod (pętli) ze wspomnianych przykładów.
Ciekawa sprawa... Przecinek jakby z innej bajki i nie chce się formatować komórka. Spróbuj w pętli: [syntax=vb]Sub Makro() Dim c As Range For Each c In ActiveSheet.UsedRange If Right(c, 1) = "*" Then c = Val(Left(c.Value, Len(c) - 1)) c.NumberFormat = "0.00" End If Next End Sub[/syntax]
:arrow: Do autora: Dobrze podstawiłeś to makro? W załączeniu przykład z działającym makrem kolegi adamas_nt Poprawiłem tylko to, że nie liczy dla 100 wierszy tylko dla wszystkich wierszy w kolumnie A zeszytu1. Dodane po czasie ----------------------------- Zmieniłeś treść wiadomości więc moja uwaga nie ma już uzasadnienia, niemniej pozostawiam przykład...
Tak na szybko... Bez obsługi błędów, gładzenia kodu itp. Sub czytajpliki() Dim linia, sciezka, fs As Object, f, f2, k 'Application.ScreenUpdating = False sciezka = "C:\Documents and Settings\admin\Desktop\test\" Set fs = CreateObject("Scripting.FileSys... Set f = fs.GetFolder(sciezka).Files For...
Masz racje może faktycznie ciężko i spaprałem opis, postaram się to sprawdzić po weekendzie. Jeszcze raz opisuje o co mi chodzi , mam 200 plikow w folderze "dane", w folderze "WZOR" jest plik wzorcowy wzor.xls oraz folder "CEL" czyli jest tak skrypt z folderu "dane" pobiera pierwszy plik to jest otwiera plik np g35.xls kopiuje odpowiednie zakresy komorek...
Napisałeś pętlę nieskończoną. Nie do końca łapię co chcesz zrobić. Może wystarczy licznik pętli przesunąć poza gałąź If Do Until ActiveSheet.Range("A" & i) = "" Or ActiveSheet.Range("A" & i + 1) = "" If Range("A" & i).Value = 37258 Then Range("A" & i + 1).EntireRow.Insert...
dzięki wielkie ! fajny kod, będę więc go też stosował.. ja przynajmniej moglem sie troche nauczyc przy pisaniu tego swojego prostego makra
a co masz na myśli mówiąc "...podstawiać formuły w osobnej pętli"? Wstaw kolumny, wpisz ręcznie formuły sumowania i przepisz argumenty do makra. Po zakończeniu pętli wstawiającej kolumny i nagłówki (usuń linię z wstawianiem sum), dopisz następną wpisującą tylko formuły.
Dzień dobry! Potrzebuje kod w makrze Założenia: Będzie powtarzał daną wartość np. 3000 lub tekst w danej kolumnie w askusz1 oraz powtarzał daną wartość np.0000 lub tekst 2 w arkuszu 2
A jak dokładnie są nazwane arkusze? Cała data, czy tylko numer dnia? Jeżeli cała data to: Sub NazwaArkusza() Range("a2") = ActiveSheet.Name End Sub przy numerze dnia: Sub NazwaArkusza() Range("a2") = ActiveSheet.Name & ".02.2011" End Sub To jest tylko dla jednego arkusza. Dla większej ilości...
Przecież już tą kwestię Ci rozwiązałem w makrze kilka pozycji do góry. Chodzi o to makro pracujące w pętli for. Należy tylko podać w pętli for argument jak wiele artykułów ma sprawdzać. Można też to makro rozbudować aby samo sprawdzało ile jest rekordów i zapisywało do zmiennej.
Witam, Czy istnieje możliwość napisania w MS Excel makra, które będzie działało zgodnie z poniższym schematem: 1. W skoroszycie istnieje arkusz Jacek oraz Placek 2. W arkuszu Placek w zakresie A1:K500 występują wartości całkowite, które mogą się powtarzać 3. W arkuszu Jacek w kolumnie "W" istnieją wartości całkowite unikatowe - nie powtarzające się...
Witam, mam makro sprawdzające wiersze w arkuszu Excel. Działa dobrze, jednak chciałbym aby jednym przyciskiem, który mam na Arkuszu1 program sprawdził wiersze w arkuszach w zakresie "Arkusz4:Arkusz36". Teraz muszę wklejać przycisk w każdym arkuszu, żeby zadziałało. Oto moje Makro: Sub przelicz() Const max As Integer = 36 Dim i As Integer i = 26 Rows("26:36").Select...
Cześć, mam pytanie czy jest możliwe stworzenie makra które kopiuje jedna zakładkę z pliku źródłowego do nowego pliku excelowskiego, ale tak, żeby to makro pokazywało się dla danej grupy roboczej (wszystkich użytkowników) podczas włączania nowego pliku w Excelu np w formie dodatkowego buttona na wstążce?. Proszę o podpowiedz co i jak trzeba zrobić. dzięki...
Witam Na początku chcę zaznaczyć, że nie potrafię pisać makr dlatego szukam pomocy na tym forum. Myślę nad stworzeniem bazy danych. Potrzebuję makro, które na podstawie danej wartości w kolumnie zapisze odpowiadające im wiersze do danego pliku o nazwie tej wartości do danej lokalizacji. Tak jak to pokazałem na przykładzie. W pliku "test" rozpisałem...
Witam. Napisałem proste makro kopiujące kilka komórek. Maklro działa mi bez problemu. Chciałbym jednak troszkę zmienić wygląd arkusza. Jak za pomocą makr ukryć paski przewijania, paski narzędziowe, menu i obramowania wierszy i kolumn widoczne w excelu. Próbowałem troszkę pokombinować, udało mi już po uruchomieniu wyłączyć paski narzędziowe, lecz gdy...
Męczę raport i próbuje napisać makro , które by działało następująco: Jeśli komórka w plik1 ma określoną wartość (np wtorek) to przenieść wartość komórki która jest pod nią (w następnym wierszu) do pliku2 w miejsce (X,Y). Proszę pomóżcie.
Cześć, potrzebuje makra które będzie sumować zakres. w linku zobrazowane o co mi chodzi. Czy mógłby mi ktoś w tym pomóc? https://obrazki.elektroda.pl/6553279700_...
Witam, Mam pewien problem, ponieważ chcialem stworzyć makro a nawet nie wiem jak to ugryźć. Generalnie chodzi o to aby: po uruchomieniu makra wyswietlało sie pole do wpisania od... i do... w którym będę mógł okresic daty. Format daty to dd-mm-rrrr. Daty są w każdym arkuszu w jednej kolumnie, powiedzmy D. Wyświetlone komórki powinien kopiować do nowego...
Witam, mam problem z makrem... Będę wdzięczny za pomoc!!! Mianowicie. Makro ma filtrowac arkusze w skoroszycie (12 arkuszy z 14). W jednym (z dwóch niefiltrowanych - o nazwie "sterujacy") sa kryteria (wybierane z listy rozwijalnej przez uzytkownika). Przy nie wpisaniu zadnego kryterium powinno pokazac wszystkie dane. Ponizej moje wypociny : Sub filtruj()...
Witam, pracuje na excelu (Office 2010) jednak o makrach niestety nie mam zielonego pojęcia. Potrzebuję aby arkusz (baza danych) który ma wiele kolumn (A-AF) i "masę" wierszy (ok 20 tys.) dało się podzielić szybko makrem na oddzielne pliki wg. jednej wskazanej kolumny. Oczywiście podzielone pliki mają mieć nagłówek z pliku bazowego i nazwę wg. wartości...
Najpierw opis, potem problem. Przykładowy Excel 2013 o nazwie "POMOC" w nim są komórki scalone i nie scalone, niestety tak musi być. Przykładowo z folderze o nazwie "AAA" mam 2000 plików Excela o różnie zapisanych nazwach (imie i nazwisko, data itp.)a wyglądzie w środku jak plik o nazwie "POMOC".. W folderze "AAB" jest plik Excela o "BAZA". W "Bazie"...
Cześć, Mam problem z doszlifowaniem makra, którego zadaniem jest przeniesienie wyfiltrowanych danych do jednego zbiorczego arkusza. Mam już makro, które działa bez zarzutów i zrzuca mi informacje do jednego zbiorczego pliku. Brakuje mi jednak funkcjonalności, która przy wywoływaniu komendy scal pliki w jedno, pobierze te dane, o które ją poproszę. Chodzi...
Chcę usprawnić sobie pracę, dlatego pomyślałem o makro. 1) zaznaczam 2 lub więcej komórek w kolumnie A (dla przykładu A14 i A15). 2) klikam scal i wyśrodkuj 3) zaznaczam tyle samo komórek w kolumnie B, C i D (oczywiście zaczynam od tego samego wiersza co w pkt 1, czyli idąc za przykładem wiersz nr 14 i 15) 4) czyszczę komórki z obramowania (w arkuszu,...
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...
Witam , mam problem . Otóż tworze proste makro robiące w arkuszu numer 1 , 3 wykresy i jeden wiersz ktory jest iloczynem 2 komórek , no i wszystko ładnie wychodzi , tylko ze kiedy to samo makro chce zastosowac do arkusza numer 2 to niestety nie dziala , poniewaz robi te same czynności w arkuszu numer 1 , pytanie brzmi , jak makro zrobione w arkuszu...
Witajcie, mam ogromną prośbę o pomoc w stworzeniu makra dla pliku. Męczę się z tym już kilkanaście godzin i niestety brakuje mi zwyczajnie wiedzy programowania VBA. Czy ktoś z Was mógłby mi pomóc stworzyć marko? Wkrokach opiszę co chciałbym, aby makro robiło. 1.Po naciśnięciu przycisku ( wiem jak przypisac marko do przycisku) odblokuj aktualny skoroszyt....
Witam, Nagrałem makro w którym wyszukiwane są dane z innego pliku za pomocy funkcji wyszukaj pionowo. Podczas nagrywania funkcja znalazła dane i wstawiła do innego pliku, po zapisania makra i ponownym uruchomieniu formuła zwraca zupełnie inne wartości. Może ktoś sprawdzić kod i powiedzieć co jest źle? Poniżej przesyłam kod: [syntax=vb]Windows("1.xls").Activate...
Witam wszystkich . Otóż mam problem następujący potrzebuje makro ,które sortowałoby wyszukane rekordy po nazwie i kopiowało do innego arkusza , najlepiej żeby było z oknem do wpisania tego co jest potrzebne. Nie zawracałbym tym głowy gdybym miał chociaż elementarną wiedzę. Niestety jestem totalnym laikiem w tej kwestii a znajomość excella mam podstawową....
Zadaniem jest napisać makro... Wystarczy "zwykła" formuła, jeśli satysfakcjonuje Cię takie rozwiązanie. Coś na wzór: JEŻELI(CZY.BŁĄD(WYSZUKAJ.PIONOWO(...));0... W VBA należałoby zagnieździć dwie pętle dla porównania każdej komórki z każdą...
Na podstawie samego kodu, to nie jest oczywiste. Powinnaś załączyć plik z tym kodem i napisać w którym dokładnie miejscu kodu występuje błąd. Poza tym kod jest trochę dziwny. Ile masz arkuszy o nazwie "aaaa"? Po co ta pętla? Czy pasek ScrollBar ma faktycznie numer 2?
Witam, generalnie to mam wrażenie, że Twój opis jest bardziej zagmatwany niż to czego faktycznie potrzebujesz. Niestety w załączniku nie ma makr, którymi planujesz generować swoje zestawienie i to trochę utrudnia znalezienie właściwego rozwiązania. To co mi się na początek rzuca w oczy to układ pliku. Dodanie kolejnych produktów spowoduje przesunięcie...
Wystarczy zwykła pętla z wieloma warunkami. Zobacz przykład (funkcja VBA) w [url=http://www.elektroda.pl/rtvforum/to... temacie.
Makro, a w makrze:[syntax=vb] Sheets("Arkusz1").Select Sheets("Arkusz1").Copy After:=Sheets(3)[/syntax] ... ostatnia linijka powtórzona tyle razy, ile razy chcesz skopiować arkusz (może być np. w pętli). Dokładne parametry - odsyłam do help'a Excel'a.
Ciekawe czy to jest w ogóle możliwe w VBA szukałem w necie jakiejś gotowej pętli ale nic nie ma Nagraj sobie makro i podstaw to pod np. pętle for
Po mojemu, nie ma tu nic skomplikowanego, jedynie "trochę" grzebaniny... Pętla z zastawieniem kilku sideł w postaci instrukcji warunkowych i jazda. Excel nie jest od poprawiania błędów językowych, więc to zostawiłbym Word'owi, albo w ogóle się nie przejmował. Wstawienie grafiki do formularza nie jest problemem. Rzecz w tym, żeby przygotować źródło w...
Jeśli znaki "<" oraz ">" występują tylko jako "nawiasy" znaczników i nigdzie więcej, to można w prosty sposób skorygować pętlę Do , umieszczając warunek i polecenie wyjścia z pętli wewnątrz niej. Rezygnujemy wtedy z tablicy i określamy początek i koniec fragmentu do pogrubienia wg wspomnianych znaków.
Co masz na myśli pisząc "karta"? Dla arkuszy skoroszytu można zagnieździć kod w kolejnej pętli For ark = 1 to thisworkbook.sheets.count ' lub liczbowo indeksy Np 2 To 4 sheets(ark).select 'kod Next
Zasugerowałem się przyciskiem "kolor wypełnienia" w Excel2003. Jest tam tylko 40 kolorów. Sądziłem że sa po kolei ale jak przed chwila sprawdziłem - myliłem się. W zestawie 40 nie ma np ciemnego żółtego co będzie wpływać na ewentualne obliczenia. Więc we wszystkich makrach powyżej należy poprawić 40 na 56. (W przypadku pierwszego makra wydłuży to jeszcze...
Dzięki za podpowiedź Mam pytanie jak przypisać wartość LinaMax dla (komórka.Value =) Tak żeby można było skończyć pętle
Pętla, podstawianie (replace), porównywanie długości ciągów (len), rozbijanie ciągów (split), podstawianie, porównywanie, rozbijanie, itd. W zależności, czy warunek spełniony wstawianie wiersza, dodanie wartości, mnożenie *10, lub przepisanie. Mnóstwo kombinacji, ale do zrobienia.
Czy w takim razie mogę prosić o pomoc na przykładzie tego pliku z zalacznika? Jeśli wszystkie pliki CSV mają taką strukturę jak w Twoim załączniku ? - to proponuję wykorzystanie tutaj pętli realizującej odpowiednio skonfigurowany import danych tekstowych ! Po uruchomieniu makra z pliku KonwertCSV-XLSX.XLSM - konieczne będzie wskazanie folderu roboczego...
Do pierwszego możesz użyć funkcji RIGHT (zakładając że tydzień jest dwucyfrowy i zawsze na końcu) tydzien = Right(wartosc_komorki, 2) Do drugiego: albo użyć przycisku którego kliknięcie wywołuje makro dodające nową osobę do zakłądki "status" i "zasoby", albo spróbować obsłużyć zdarzenie Worksheet_Change zawężone do kolumny gdzie jest nazwisko....
Jeśli ma się to odbywać automatycznie, myślę że makro musiałoby być uruchamiane przy otwarciu arkusza. Powinno zawierać funkcję timer, a reszta kodu (badanie godziny, kopiowanie itd) w pętli, uruchamianej co czas określony przez PauseTime, lub coś podobnego. O to chodzi?
Najprościej. Tę linię wkb.Sheets(ark).Cells(ostWrs... 1) = ActiveWorkbook.Sheets("Ogólne&q... przesuń do bloku pętli For j [syntax=vb] For j = 1 To 20 wkb.Sheets(ark).Cells(ostWrs, 1) = ActiveWorkbook.Sheets("Ogólne").Range("A... 'TUTAJ wkb.Sheets(ark).Cells(ostWrs, j + 1) = .Cells(k, j + 2)...
Makro niemal prosto z rejestratora, jeśli się nie mylę. Co, jeśli w arkuszu źródłowym będzie więcej niż dwie pozycje? Powinieneś pójść krok dalej i zainteresować się pętlami.
Może przez szukanie w pętli z wykorzystaniem obsługi błędu. Np[syntax=vb]On Error Resume Next Do While Err = 0 kol = Rows(1).Find(what:="MSISDN", lookat:=xlWhole).Column kol = Rows(1).Find(what:="Kod Sprzedawcy", lookat:=xlWhole).Column Columns(kol).Delete Loop[/syntax]
Najprościej napisać makro w VB i skorzystać z pętli
Załączam przykładowy plik excela z makrem liczącym ilośc znaków w zadanym zakresie arkusza. Wynik podawany jest w drugim arkuszu. Makro wybiera kolejno komórki z zakresu, liczy liczbę znaków w poszczególnych komórkach i dodaje narastająco liczbę poszczególnych znaków z zakresu. Arkusz można dostosować do swoich potrzeb, np. wynik podawać w tym samym...
Ale mnie chodzi o Makro wstawiające do bieżącego Skoroszytu (Zeszytu) Makro we we właściwości: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) No i w czym problem? Ja podobnie jak adamas_nt nie rozumiem problemu... plik1.xls ok plik2.xls ok plik3.xls ok
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...
Przejdź krokowo (klawisz F8) i zobacz ile kroków wykonuje pętla. Może trzeba zmienić warunek, może kolumnę. Nie wiem, nie widzę pliku źródłowego... Jeśli działało Ci to (na tylu zmiennych obiektowych) dla jednej linii, powinno działać w pętli.
Skoro wyłączenie makr umożliwia otwarcie pliku, to problem musi tkwić tam. Zrobiłeś tak jak pisałem (zapisałeś plik kiedy był otwarty na wysokich zabezpieczeniach makr?). Sprawdź czy nie masz jakiś pętli uruchamianych przy otwarciu które się "zapętlają", może masz tam jakieś linki do lokalizacji sieciowych które są niedostępne, bardzo dużo "kosztownych"...
A nie dałoby się jeszcze ograniczyć tego zakresu kolumnami? Makro działa tylko w jednej kolumnie, czwartej (While Cells(wrs, 4 )). Doklej tylko te 6 linijek i dopisz warunek pętli 'Do'.
Jeśli nie miałeś do czynienia z formularzami, to najprościej zamknąć InputBox w pętli w Thisworkbook, przy zdarzeniu Open. Coś jak[syntax=vb]With Sheets("NazwaArkusza") For i = to 10 .Cells(i, 2)= Inputbox ("Wpisz wartość dla komórki B" & i) Next .activate End With[/syntax]Dograj sobie rejestratorem polecenie drukowania, lub po aktywowaniu arkusza naciśnij...
makro działa ok ale przy małej liczbie wierszy. W przypadku gdy np: lp=300 to excel wpada pętle i cała operacja trwa bardzo długo i pożera dużo ramu. Da się coś z tym zrobić?
Jeśli makro, to prosta pętla 'Do-Loop' z instrukcją warunkową. Ale, z kolumną pomocniczą, można i bez makra (załącznik)
Chciałbym napisać makro No właśnie. Jeśli wiesz jak zajmie Ci to 5 minut. Chcesz się dowiedzieć, czy dostać gotowca (w takim przypadku wrzuć plik z przykładem)? Po mojemu trzeba zadziałać przy pomocy dwóch, zagnieżdżonych pętli, znając ilość kolumn (End(xltoright).column), Nr pierwszego wiersza z nazwiskiem i Nr pierwszego wiersza w arkuszu docelowym....
Nagraj to makro i dodaj pętle for o odpowiedniej ilości. Jeżeli zdążę :) to za chwile podrzucę ci kod
Zwykle na czas działania pętli wystarcza wyłączenie zdarzeń i odświeżania.[syntax=vb]Sub Kasuj() Application.EnableEvents = False Application.ScreenUpdating = False For i = Cells(65536, "A").End(xlUp).Row To 3 Step -1 If Cells(i, "B").Value = "" Then Rows(i).delete shift:=x1Up End If Next Application.EnableEvents = True Application.ScreenUpdating =...
Kurcze, szukałem na prawde długo i nic nie mogę znaleźć. Jest dużo o imporcie .txt i .csv, ale o .xls i .xlsx nie mogę znaleźć :( Być moźe dlatego, że niepoprawnie zadaje pytanie do szukania. Będę wdzięczny za każdą wskazówkę Pozwól sobie pomóc i napisz jak ten import ma wyglądać? Gdzie znajdują się pliki do importu, jak się nazywają, jak mają się...
Jak Ci wierszy przybędzie do miliona, to zaczniesz myśleć, dlaczego to tak długo liczy...;) Ale jeżeli już chcesz tak, to nie sprawdzaj w każdym przejściu pętli, czy komórka jest różna od pustej, tylko wylicz wartość końcową pętli na przykład tak: [syntax=vb] For x = 2 To Cells(Rows.Count, "A").End(xlUp).Row Cells(x, 1) = "=IF(RC[1]<>"""",R[-1]C+1,"""")".....
makro pętel pętel excel excel pętel
stroić antena president florida słuchawki odsłuch scania manualne
schemat inwertera hybrydowego schemat falownika hybrydowego
Kody do pilota uniwersalnego dla TV Skymaster Łączenie starych i nowych akumulatorów w Scanii