1. Wyrzuć "górne" r=r+1, ustaw (u góry) r=2 jeśli... sam już nie wiem. Wypróbuj. 2. Nie ta metoda. Musiałbyś copy-paste i wybierając (select) wiersz (zakres) docelowy. P.S. Zmykam. Dobranoc ;)
[syntax=vbscript]For y = 1 To ile - 1[/syntax]
[syntax=vbscript]Next a.AutoFilterMode = False End Sub [/syntax]
Brak załącznika to poważny mankament! Nie wiadomo, jakie dane są w kolumnie "O". W kodzie PRL jest sprawdzany warunek: [syntax=vbscript]Sheets(x).Cells(y, "O") >= -30[/syntax]Otóż warunek ten spełniają nie tylko liczby >= -30, ale również puste komórki, dowolne teksty, w tym teksty puste, wartości logiczne. A jeśli w komórce jest wartość błędu, to program...
wrs = Range("A2:D2").End(xlUp).Row + 1 'co to ma robić? Skoro od drugiego wiersza w górę, to... pokazuje pierwszy wiersz :) Uparcie drepczesz w miejscu. Na czym wysypuje się makro z postu #16?
[syntax=vb] Sub SzukajCiagu() Dim x As Long, y As Long, z As Long, SzukaneSlowo As String x = 1 z = 1 Sheets("PrzeszukiwanyArkusz").Select While Cells(x, 1) <> "" y = 1 While Sheets("ListaSlow").Cells(y, 1) <> "" SzukaneSlowo = Sheets("ListaSlow").Cells(y, 1) If InStr(1, Cells(x, 5), SzukaneSlowo) > 0 Or InStr(1, Cells(x, 6), SzukaneSlowo)...
Poproś kogoś innego.
Dodano po 3 [syntax=vb]Sub Copy() For Each cell In Sheets(2).Range("A:A") If cell.Text = "" Then Exit For Rows(cell.Row & ":" & cell.Row).Copy Sheets(cell.Value).Cells(Rows.Count, 1).End(xlUp).Offset(1) Next End Sub [/syntax] tak dobrze
Jeżeli pola są oddzielone spację, wystarczy taka modyfikacja pętli: [syntax=vb]Do While Not EOF(1) Line Input #1, TextLine If Left(TextLine, 13) = "121401_2.0011" Then arr = Split(TextLine, " ") wsdane.Cells(i, 1).Value = arr(0) wsdane.Cells(i, 2).Value = arr(1) wsdane.Cells(i, 3).Value = arr(2) wsdane.Cells(i, 4).Value = arr(3) wsdane.Cells(i, 5).Value...
[syntax=vbscript]Sub Zawiera() Sheets("Arkusz1").Select a = InputBox("Podaj tekst do szukania: ", "Wyszukaj") ow = Cells(Rows.Count, "A").End(xlUp).Row y = 1 For x = 1 To ow If InStr(1, Cells(x, 2), a) > 0 Then Range(Cells(x, 1), Cells(x, 2)).Copy Sheets("Arkusz2").Range("A" & y) y = y + 1 End If Next End Sub [/syntax] Poniżej bez rozróżniania wielkości...
[syntax=vbscript]Sub Etykiety() Set a = Sheets("Arkusz1") Set b = Sheets("Arkusz2") For x = 2 To a.Cells(Rows.Count, "A").End(xlUp).Row b.Cells(2, 3) = a.Cells(x, 1) b.Cells(4, 3) = a.Cells(x, 2) b.Cells(6, 3) = a.Cells(x, 3) b.Range("A1:C8").PrintOut Next End Sub[/syntax]
w Arkuszu1 ustawiam automatycznie filtr na wartości równe 0 lub "Blanks" w kolumnie V i chciałbym aby makro automatycznie skopiowało wszystkie wiersze do Arkusz2. Wszystkie wiersze z tabeli czy wszystkie WYFILTROWANE wiersze z tej tabeli??
Przetestuj załączone rozwiązanie. Przed uruchomieniem należy: - Plik csv nazwać: "dane.csv" - Załączony skoroszyt zapisać w folderze, w którym znajduje się plik "dane.csv" U mnie cała procedura wykonuje się ok. 1 min. pozdrawiam andie
Zmienit 'For i = 0 To nrep - 1' na 'For i = 1 To nrep - 1'
Może to Ci pomoże. Makro, dla podanej "szukana" przeszukuje każdy wiersz. Jeżeli znajdzie szukaną to kopiuje cały wiersz i przenosi do innego arkusza Dodano po 3 jeszcze raz bez zbędnych żeczy :) [syntax=vb]Sub Szukaj() Dim wiersz As Integer, kolumna As Byte, szukana As String, NumerWiersza As Integer Dim lastRow As Integer With ActiveSheet lastRow...
Chyba łatwiej zrobić dwuklik na wierszu, z którego chcesz kopiować. Równocześnie uruchamiasz makro i wskazujesz wiersz. Możesz też się upewnić, czy to właściwy wiersz. Oczywiście można też wstawić tam InputBox, tylko wtedy jak chcesz uruchamiać to makro? Jeśli chodzi o moją propozycję, to komórki docelowe wypisujesz po kolei jako adresy obiektu Range:...
No tak... W #1 jest Cells(2, 3), czyli C2. Ja użyłem C3, a w ostateczności Ty użyłeś C1.;)
[syntax=vb]wiersz = 6 Sheets(1).Activate While Cells(wiersz, 1) <> "" Cells(wiersz, 2).Copy Sheets(Cells(wiersz, 1).Text).Range("C8") wiersz = wiersz + 1 Wend [/syntax]
Naprzemienne kolory zrealizujesz formatowaniem warunkowym. Formuła: =MOD(WIERSZ();2)=1 Co rozumiesz pod pojęciem A po kolejnym użyciu nie kopiowało nagłówka tabeli tylko wstawiało wyszukane rekordy Z nagłówkiem nie ma problemu, wystarczy sprawdzić czy jest i kopiować warunkowo (gdy nie ma). Natomiast nic nie wiadomo co to za "wyszukane rekordy".
No jak chcesz koniecznie kopować: Sub Kopio_aktyw_wiersza() ' ' Kopiowanie danych z aktywnego wiersza kol. A do D ' aktywny = Selection.Row kolumna = 1 ostatnia = Cells(Rows.Count, kolumna).End(xlUp).Row ' bez selekcji od razu kopiowanie wybranych komórek : Range(Cells(aktywny, 1), Cells(aktywny, 4)).Copy 'kopiowanie danych z aktywnego wiersza zakres...
Wklej do modułu pliku z linka i uruchom. Makro w tej postaci "wydłubało" 1341 wierszy. Po wszystkim wyeksportuj, lub skopiuj arkusz "Wynik" do swojego pliku. Reszta w komentarzach.[syntax=vb]Sub Yoasia() ileArk = 2 'są dwa z danymi w pliku z linku. Zmień jeśli jest inaczej. 'tu sprawdzimy czy jest arkusz wynikowy, wstawimy jeśli nie 'nie zmieniaj kolejności...
Nigdy nie programowałem w VBA, ale znalazłem takie coś, może okaże się pomocne. Jeżeli nie to poszukaj w sieci pod hasłami "vba copy rows" i podobnymi, pojawia się sporo wyników. The example codes will copy to a database sheet with the name Sheet2. Every time you run one of the subs the cells will be placed below the last row with data or after the...
A w jaki sposób to anulowanie po kopiowaniu?
Jeszcze jedno pytanko Wszystko działa tak jak trzeba tylko czy jest możliwoć żeby po znalezieniu takich przypadków kopiowany był cały wiersz?
Może tak: [syntax=vbscript]Sub Kopiuj() Dim i&, Ow& Application.ScreenUpdating = False Ow = Cells(Rows.Count, "A").End(xlUp).Row For i = 8 To Ow Step 5 Range("A" & i).Copy Range("A" & i + 3, "A" & i + 4) Next End Sub [/syntax] andie
było by super Co było by? Testowalem Twój kod na XL2007 i XL2003 (inne nie mam) - wszystko dziala poprawnie
Spróbuj z InputBox'em: [syntax=vb]w = 14 ile = Int(InputBox("Ile?", "Wpisz liczbę całkowitą", 3)) If ile < 1 Then Exit Sub Application.ScreenUpdating = False Range("A16:V29").Copy For i = 1 To ile Range("A" & 16 + w).Select ActiveSheet.Paste w = w + w Next Application.CutCopyMode = False Application.ScreenUpdating = True[/syntax]
Witam, jestem tutaj nowy. W Excelu poruszam się biegle, ale mam problem z Makrami i VB. Mam dwa pliki. Plan produkcji.xls w nim arkusz Produkcja i tam ma różne dane. Drugi plik to Zrobione.xls i arkusz zrobione. Chciałbym, aby w pliku zrobione po uruchomieniu Makra wypisało mi wszystkie arkusze ze statusem GOT. który jest w kolumnie N pliku Plan produkcji....
Odwołaj się w pętli do arkusza źródłowego/docelowego przez Worksheets("nazwa_arkusza"), a po kropce do konkretnej komórki: albo w postaci .Range("E" & i) albo w postaci .Cells(i, 5), gdzie i - nr wiersza źródła (ew. jeżeli zrobisz w pętli for each c in ...., to możęsz użyć c.Row). Do tego druga zmienna np. j dla wiersza arkusza-celu, czyli: j = 1 for...
Ten pomysł z kopiowaniem każdego wiersza osobno jest niezbyt trafny, chyba że kolejność wierszy ma być za każdym razem inna. Ale i tak lepiej zamiast przycisków zastosować pola wyboru, żeby było widać, które wiersze zostały wybrane do skopiowania (lub już skopiowane). Teraz można się łatwo pomylić i albo skopiować któryś wiersz dwa razy, albo o którymś...
Super działa rewelacyjnie, adamas_nt dziękuje ci bardzo. A mam pytanie co dodać do tej funkcji by sprawdzało mi do końca czy 'Malina' się nie powtarza. Okazało się, że 'Malina' w 1 arkuszu może mi się powtarzać. A w tej funkcji jak znajdzie to kopiuje pojedynczy wiersz.
Makro jest w pliku ZBIORCZY.XLSM. Te 1_19, 2_19, ..., n_19 nie mają w sobie makra. Z nich makro napisane w pliku ZBIORCZY.XLSM kopiuje do pliku ZBIORCZY.XLSM wiersz nr 2 z Arkusza 1.
[syntax=vbnet]Sub Makro1() Set toskopiowac = Selection.EntireRow Range(toskopiowac.Offset(1, 0), toskopiowac.Offset(Selection.Value - 1, 0)).EntireRow.Select Selection.Insert Selection.EntireRow = toskopiowac.Value End Sub[/syntax]
Proszę o przykładowe makro kopiujące pierwszy wyfiltrowany wiersz z listy do nowego arkusza. W nowym arkuszu wklejane wiersze muszą dodawać się jeden pod drugim wraz z datą ich kopiowania.
Witam arekkrasnal pozwolę sobie zmodyfikować twoje makro [syntax=vbnet]Sub Makro1() Dim temp As Variant Dim wiersz As Long wiersz = 1 Do While Cells(wiersz, 8) <> "" If Cells(wiersz, 8).Value = 0 Then Cells(wiersz, 10).Cut Destination:=Cells(wiersz, 15) End If wiersz = wiersz + 1 Loop End Sub[/syntax]
Jeśli chcesz sprawdzać cały kopiowany zakres, to to Range(Cells(3, 1), Cells(ow, ok)).Copy Destination:=Sheets(1).Range("B" & pw) musisz zapętlić (For 1 to ow, z inkrementacją pw). Trzeba tylko określić, w której kolumnie pusta komórka czyni wiersz "pustym" (dla instrukcji If).
Bo jesli dodasz dwie kolumny do każdego działu, to w makrze Kopiuj() musisz poprawić krok wyszukiwania z 4 na 6: [syntax=vb]For kol = 1 To 255 Step 6[/syntax] i, ewentualnie, tam gdzie teraz kopiujesz komórki od C do E zwiększyć od C do G i kol+5: [syntax=vb]Worksheets("Arkusz1").Range("... & Selection.Row & ":G" & Selection.Row).Copy .Range(.Cells(wiersz,...
Witam wszystkich mam poważny problem z dodawaniem nowego wiersza za pomocą przycisku. Stworzyłem tabelkę, która zawiera wiele list rozwijanych i funkcji jeżeli to coś tam. Przycisk z odwołaniem do Makra dodaje mi kolejny wiersz zachowuje listy rozwijane ale nie przenosi funkcji i pojawiają się puste komórki. Czy może ktoś wie jak powinno wyglądać prawidłowe...
Gdy jest numer wiersza z dane('PODAJ.POZYCJĘ'), nie trzeba 'wyszukaj.pionowo', wystarczy INDEKS
Dwie wątpliwości: 1) Czy te formuły będą takie jak w przykładzie tzn. będą się odwoływać tylko do danych z tego samego wiersza? 2) Czy to ma być kopia z zaznaczenia (zaznaczam x wierszy i to kopiuję, tylko dokąd? jak określić miejsce docelowe?), czy kopia wszystkiego co jest (do ostatniego wypełnionego wiersza w określonej kolumnie), wtedy miejsce docelowe...
komorka to jest Cells(wiersz, kolumna)
W prosty sposób można tylko w dodatkowej kolumnie D, w której byłby wyliczany postęp jako ułamek. W kolumnach B i C można to zrobić, ale trzeba dla każdej komórki podać osobną formułę, bo przy definiowaniu tego typu formatowania nie można używać adresów względnych, zatem nie można skutecznie kopiować komórek sformatowanych tak, aby każdy wiersz był...
Spróbuj np. tak - najpierw zaznaczasz dane w wybranej (pojedynczej) kolumnie, potem wykonujesz makro. [syntax=vb]Application.ScreenUpdating = False For w = Selection.Row To Selection.Row + Selection.Count - 1 Step 2 Cells(w + 1, Selection.Column).Value = Cells(w, Selection.Column).Value Next w Application.ScreenUpdating = True[/syntax] PS. Takie rzeczy...
Mam jednak pytanie jak to się dzieje że wkleja to w odpowiednie miejsce? Cały mechanizm makra polega na przechodzeniu krokowym (założyłem wstępnie od wiersza 1 do 10 - ale to można odpowiednio dostosować do potrzeb) wzdłuż kolumn arkusza 1 i porównywaniu wartości z odpowiednimi komórkami arkusza 2 :D Jeśli makro napotka w którymś wierszu inne wartości...
nowe rekordy muszą się wklejać po kolei w te tabele obok (A1:D1, A8:D8 itd.) :?: :?: :?: Czy to ma znaczyć, że nowe rekordy mają być dopisywane do poszczególnych tabelek z tym samym ID ??? Jeśli istnieją jakiekolwiek racjonalne przesłanki, że poszczególne segmenty tabeli nie mogą być dziesięcio-wierszowe :cry: to w kodzie te dane mają kopiować się...
Przyczyną błędu jest tylko to, co napisał adams_nt : powinna być deklaracja typu jak poniżej: Ewentualnie program mógł by sprawdzić czy akrusz B jest otwarty, jeżeli jest nie otwierać go ponownie a jeżeli jest zamknięty otworzyć go. Założyłeś, że Twoje makro będzie kopiować z pliku B.xls aktualnie zaznaczony wiersz - ono nie otwiera pliku [ponownie]....
Witaj. Makro, jak każdy inny algorytm, nie robi czegoś na przykład, tylko dokładnie to, co się zaprogramuje. Opis jest na tyle nieprecyzyjny, że najlepiej będzie wrzucić przykładowy arkusz z przykładowymi danymi i wtedy napisać, czego ma dokładnie szukać, jakie warunki muszą być spełnione aby dokładnie jakiś zakres przenieść. Na razie wygląda jakby...
Ale co Ci nie jeździ, bo nie bardzo rozumiem. Ten kod początkowo kopiuje wszystko, a te wiersze z zerami są usuwane dopiero później, kolejną częścią kodu. Ja nic w logice Twojego kodu nie zmieniałem.
Witam Próbuje stworzyć makro które będzie kopiowało dane z excela do pliku csv a następnie wysyłało go na serwer ftp, ale że jestem zielony z VBA idzie mi to bardzo opornie, proszę o pomoc. O co dokładnie chodzi? Plik źródłowy wygląda tak: [syntax=tex] A B C D E F 1 Header Date Hour inflow outflow other 2 3 Name1 2016-03-03 06:00 20,0 1,0 text1 4 Name2...
A wbudowany filtr oraz kopiuj-wklej nie wystarczy?
Kopiuj całe wiersze. Odpowiednia linia jest w makro w załączniku. Usuń apostrof opisanej linii, wyrzuć/zaapostrofuj trzy następne (od For do Next).
Czy jest możliwe zmodyfikowanie makra aby kopiował do określonego wiersza? Tzn.? Dane z pliku txt ma kopiować maksymalnie do jakiegoś wiersza w pliku txt, czy dane mają być kopiowane do jakiegoś konkretnego wiersza w excelu?
w pierwszym wierszu dla kolumny jest słowo "Tak" Dla tego trzeba jedna linijka[syntax=vb] Sub kopia() If ActiveSheet.Range("A1") = "Tak" Then ActiveSheet.Copy End Sub[/syntax]
Sprawdź czy o to chodziło. Jeśli faktycznie druga procedura ma kopiować "wiersze powyżej", to oczywiście nie zawsze będzie ich 15, bo wyszukiwana wartość może zostać odnaleziona w wierszu, powyżej którego nie ma 15 wierszy. Załączona procedura w takich przypadkach kopiuje wartości począwszy od wiersza nr 3 do wiersza wyszukanego. [syntax=vbscript] Option...
Brakuje chyba jeszcze jednej pętli zmieniającej kod sklepu. Hmm, raczej: na pewno ;) Spróbuj[syntax=vb]Sub asd() Dim wiersz, nr, ilosc As Integer Dim ostWrs As Long, w As Long, ile As Integer ostWrs = Range("B65536").End(xlUp).Row wiersz = 1 Range("C1:D1500").Clear For w = 1 To ostWrs nr = Cells(w, 1) ilosc = Cells(w, 2) For ile = 1 To ilosc Cells(wiersz,...
każde kolejne sczytanie z czytnika do Arkusza "NAZWA ODDZIAŁU" A2 kolejno wklei dane do pustej komórki w Arkuszu "DANE" Jeśli skaner korzysta tylko z komórki A2 :?: to możesz wykorzystać makro jak w załączniku 1063586
Nagraj makro z Ctrl+F i zamiast .Select podstaw .Row. Będziesz miał już Nr wiersza. Nagraj drugie makro z kopiowaniem. I pod Range(cośtam) podstaw Rows(nasz Nr wiersza z pierwszego makra). Połącz wszystko w jednym makro i "prawie" gotowe. Wystarczy dołożyć wyszukiwanie wolnego wiersza, obsługę błędów (może nie znaleźć), etc.
Idealnie, Dziękuję Ci bardzo ;] Dokładnie o to mi chodziło. Mógłbym Cię jeszcze prosić o dodanie do tego kodu, opcji która dodawałaby date kopiowania w 17 kolumnie kopiowanego wiersza?
Nie wiem co miałeś na myśli Po następnym wpisaniu daty w I4 powinno kopiować zakres dat z I4 do R4 itd. Ale pozostałe funkcje działają. [syntax=vb] Public Blokada As Boolean Sub Przesun(Wiersz As Integer) Dim a As Integer For a = 7 To 0 Step -1 ActiveSheet.Cells(Wiersz, a + 9 + 1).Value = ActiveSheet.Cells(Wiersz, a + 9).Value Next a ActiveSheet.Cells(Wiersz,...
Witam. W której części wiersza? makro które kopiuje wybrane wiersze z innego arkusza Jak go zobaczyć?
Doczytałem jeszcze, że wszystko odbywa się w tym samym arkuszu. W takim przypadku musisz zagnieździć dwie pętle. Zewnętrzną Do...Until z inkrementacją wiersza, gdzie warunkiem będzie niepusta komórka i wewnętrzną For...Next również ze zwiększaniem indeksu wiersza. Taki szybki przykład "pisany na kolanie"[syntax=vb]wrs = 1 Do While Cells(wrs, 1) <>...
Witam dowolna wartość lub ustalone? jeden wiersz lub więcej?
witam, potrzebuje pomocy na utworzenie makra - postaram sie dobrze wytlumaczyc tabela 1 : kolejnosci rozladunkow- ktore zmieniaja sie w trakcie pracy mamy max 10 rozladunkow na auto. 1 kolumna- klient, 2 kolumna- tempteratura, 3 kolumna- kod trasy tabela 2 : lista wszystkich klientow przewidzianych w ciagu dnia do rozladunku 1 kolumna- liczba palet:...
Zobacz, czy o to chodziło. Makro do kopiowania: [syntax=vbscript]Sub Kopiuj() Dim b As Worksheet Dim ow As Long Set b = Sheets(ActiveSheet.Index - 1) ow = b.Cells(Rows.Count, "A").End(xlUp).Row - 1 Dim CopyRng As Range, PasteRng As Range b.Range("A4:B" & ow).Copy ActiveSheet.Range("A4").PasteSpecial Paste:=xlPasteValues b.Range("N4:O" & ow).Copy ActiveSheet.Range("N4").PasteSpecial...
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....
Dzięki. Już mam. Zamykam temat
Witam, jestem początkującym w pisaniu makr. Walczyłem cały dzień aby napisać makro i nie wyszło dlatego proszę o wzór. Z arkusza „dane”, aby przenosiło komórki wszystkie z wiersza oprócz komórek z nagłówkiem „Ilość etykiet” do arkusza „widok” i skopiowało tyle razy, jaka jest wartość w komórce z nagłówka „ilość...
Tak, tylko formula nie otworzy pliku zrodlowego i go nie zamknie a z zalozenia ma to byc robione z automatu. Poza tym to makro podepne sobie potem pod przycisk, i bedzie sie odpalalo kiedy ja tego bede chcial a nie przy kazdym otwarciu pliku. Tu jest przewaga makra nad formula. Gdybym chcial to zrobic formulami to nie zawracal bym wam glowy takimi prostymi...
(at)speedy9 , w temacie napisano wyraźnie - makro. EDIT: W dalszej dyskusji podałem rozwiązania za pomocą formatowania warunkowego zaproponowanego przez (at)speedy9 ale z nieznanego mi powodu zostało to wycięte. Więc podaje tu: =ORAZ(CZY.PUSTA(1:1))... Ot tylko tyle dla wiersza 1, dalej można sobie formatowanie kopiować.
Trzeba zmienić sposób adresowania w makro z bezwzględnego na względny . A najlepiej związać z aktywną komórką i wtedy nawet nie trzeba go kopiować - jedno makro będzie obsługiwało wszystkie wiersze. :D
: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...
Bardzo proszę o pomoc chciałbym napisać proste makro, które po przypisaniu do kontrolki formularza lub kontrolki activeX wykona takie zadanie skopiuj komórkę o adresie kolumna: A wiersz: TopLeftCell.Row (klikniętej kontrolki) do wiersz kolumna: c wiersz: ten sam
początku dla $A$1 B2 z obrazka ELEKTRODA.jpg wynika, ze dla $A$1 C2 Poniewaz nie ma zalacznika, patrz przyklad(karta i baza w jednom skoroszycie) Wiersz dla druku - wartosc w C1(za ramami PrintArea) B1:B19 - funkcja tablicowa Ctrl+Shift+Enter
Witaj Jest tylko indexy1.txt i indexy2.txt lub więcej plików tekstowych? Ma nazwy pliku stałych(indexy1.txt i indexy2.txt ) czy mogą być różne? Tam jest tylko indeksy(505-20-073), lub dłuższe wiersze? Te indeksy w osobnych wierszach? Dodano po 1 Pozostaje tylko chyba do odgadnięcia Spróbuj: [syntax=vb]Sub Idz() Dim ostw& Dim ns% Dim bs As Range, cs...
Makro poniżej przesuwa nazwiska w prawo o wartość numeru grupy+1, a następnie usuwa puste komórki w obszarze danych. Nazwiska nie są posortowane. Jeżeli jest potrzeba. sortowania to na początku makra dopisać sortowanie.[syntax=vbscript]Sub Przepisz_Nazwiska() Dim Tab_Opis As Variant With ActiveSheet Tab_Opis = Array("Grupa 1", "Grupa 2", "Grupa 3",...
A dlaczego nie dać szansy Excelowi, tylko go wyręczać? [syntax=vbscript]Sub Zapis_do_CSV() ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\baza test2.csv", _ FileFormat:= xlCSV, CreateBackup:=False, Local:=True End Sub[/syntax] Nie zwróciłem uwagi, że to ma być bez pierwszego wiersza, ale ten zawsze można usunąć później. Najważniejsze, żeby Excel...
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...
Najprościej: Zarejestruj sobie nowe makro wykonując potrzebne czynności a potem zobacz w edytorze VB jak wygląda kod. U mnie wyszło coś takiego (kopiowałem jednocześnie 5 i 10 wiersz do wiersza 1 i 2 w drugim arkuszu): Sub Makro1() Range("5:5,10:10"&... Range("A10").Activate Selection.Copy Sheets("Arkusz2").Sele...
Tam w tej komórce z FZ występuje numeracja pierwsze Fz to FZ1 ale nie wiem czy numer tutaj ma znaczenie. Ma o tyle, że do tej pory sprawdzałem, czy wartość komórki = FZ, teraz trzeba sprawdzić, czy w łańcuchu znaków, będącym wartością komórki, znajduje się fragment FZ. Dodatkowo w komórkach A pod fz znajdują się głównie cyfry bądź puste pole więc może...
Makro to strzelanie z armaty do komara, do jednorazowej operacji wystarczy użyć sposobu. Ja użyłbym funkcji wyszukaj.pionowo. Sprawdzałbym kolumny osobno wyszukując wartości w tej drugiej tabeli. Funkcja ta daje wartość n/d# jeśli nie znajdzie. Potem sprawdziłbym które wiersze nie mają w którejś z kolumn tej wartości. Ułożyłbym formułe =jeżeli(oraz(czy.brak(kkol1);czy.brak(ko...
Problem nie został rozwiązany
Dołóż pętlę sprawdzającą przed tą kopiującą. Jeśli jest nieprawidłowo, przerwij. Np [syntax=vbscript]Dim b As Boolean For wrs = 9 To 49 If WorksheetFunction.Sum(Range("BG" & wrs & ":BJ" & wrs)) > 0 And Range("BK" & wrs) = "" Then b = True Exit For End If Next If b Then MsgBox "proszę uzupełnić dane w wierszu " & wrs, vbExclamation, "kopiowanie anulowane"...
W tym, że nie ma kopiować całego arkusza. Jak znajdzie w kolumnie O i wierszu 10 wartość większą niż 70, to ma kopiować i wklejać do innego pliku tylko wskazane wartości z kolumn i wiersza 10.
.. a czy jest sposób na "zero", potrzebuje aby aktualne dane z ostatniej godziny (cały wiersz, kilkanaście kolumn) przenosiły się na koniec tabeli, będe bardzo wdzięczny za pomoc, pozdrawiam.. hmm może przy aktualizacji makro mogłoby sprawdzać dane z wybranej kolumny >0 i kopiować cały wiersz..
Super Adamas_nt. Wielkie dzięki. Czy może kopiować zakres danych bez nazw pierwszego wiersza na który nałożony jest filtr. pozdrawiam MMKP
Coś w tym stylu. Makro będzie trzeba przerobić, żeby zamiast 'Target', zapamiętywało ostatni wiersz i od niego do końca kopiowało. To jest uzależnione od tego, jak wpadają dane do 'D402'. P.S. Dlaczego nie chcesz, żeby makro, które dodaje wiersze do 'D402' dodawało też wiersze do plików Joanny i Katarzyny? To się robi jakiś bezsens wg mnie. Tym bardziej,...
Sprawdź takie makro: Cells(CC, 3).Cut zastąp linijką Cells(CC, 3).Copy . Makro działa od pierwszego wiersza, jeśli pierwszy wiersz Twojej tabeli to nagłówek, początkowe parametry CA oraz CC zmień na numer wiersza, od którego zaczynają się faktyczne dane. Makro działa do momentu napotkania pierwszej pustej komórki w kolumnie C.
https://obrazki.elektroda.pl/4025704200_... Na czerwono zaznaczyłem Dodano po 2 Powinien skasować wartość z C3, C5 itd. Nie wstawił wiersza 6 Za to wstawił wiersz 11 nie wiadomo dla czego Dodano po 1 Dołączam plik z kopiowaniem dla wszystkich kolumn
Dobre macro tylko co zmienić by nie kasowało tabeli bo mam odpowiednio komórki scalone i przeniosło dokładnie zawartość wraz z taka samą tabelka ? Z góry dziękuje za odpowiedź. Wiele jest tematów na temat kopiowania danych z arkusza do arkusza lecz nie mogę wykombinować jak 1.Skopiować tabelkę z zawartością zachowując format czcionkę etc. 2.W tabeli...
Najprościej pominiesz kolumnę robiąc nie jedno ale dwa kopiowania. Oddzielnie kawełek przed pominiętą kolumną, oddzielnie po. Pomiędzy jednym a drugim kopiowaniem trzeba przesunąć np. offsetem początek obszaru docelowego o kilka komórek w prawo, żeby dobrze trafiało. A żeby skopiować za jednym razem to rzeczywiście trzeba trochę przerobić. Makro powinno...
No dobrze, a co z układem danych ? Opis z wpisu nr 1 jest aktualny ? " komórka B2 zawierająca datę, C5 zawierającą jakieś dane jak imię nazwisko i adres " Bo dziwny to jest trochę układ. Czy tak samo ma być kopiowane do zeszytu 'Bazy', tj. w różnych wierszach, czy w tym samym wierszu ?
Wystarczy podpiąć poniższe makro :) Sub Kopiowanie() ' ' Kopiowanie Makro ' Makro am 18.12.2009 von xbaj aufgezeichnet ' Dim i As Long, wiersz As Long wiersz = 1 For i = 2 To Worksheets.Count Worksheets(i).Activate Range("M25").Select Selection.Copy Worksheets(1).Activate Range("A" & wiersz).Select...
Wypróbuj w "główny" takie makro [syntax=vb]Sub makro() ostw = Range("C65536").End(xlUp).Row Range(Cells(ostw - 2, 1), Cells(ostw, 11)).Copy Cells(ostw + 1, 1) End Sub[/syntax]Formuły powinny "ułożyć się" wg kolejności wierszy. Nie wiem tylko skąd pobierać nazwisko klienta...
A nie prościej zrobić formatowanie warunkowe. Wówczas mamy sprawdzanie przez excela wartości i makro nie obciąża go dodatkowo...Piszę już jakiś czas makra i np jak robi się kopię dużych arkuszy, to makro jest zbyt wolne - lepiej zamiast przenoszenia Rows(A) użyć zaznaczenia i polecenia kopiuj excela wpisując formuły poprzez makro niż kopiować fizyczną...
Źle się wyraziłam - dwukrotne kliknięcie w dowolny wiersz w kolumnie "Adres" w Arkuszu 'Baza' uruchamia makro, w związku z czym nie wiem jak edytować adres :)
W przyszłości nie trzeba pisać skoroszyt zamiast arkusz(z określonymi numerami) Skoroszyt to jest plik(w każdym razie tak to było do tej pory). Ponieważ nie wiadomo, czy te same struktury arkuszy, liczbę wierszy i kolumn, kopiowanie, możesz zrobić tak: [syntax=vb] Sub kopie() 'makro w pliku(skoroszycie) A, plik B jest otwarty 'kolejne 3 linie dopasuj...
Witaj. Sprawdź załącznik. Checboxy zastąpione czymkolwiek w kolumnie (może być X, może być cokolwiek poza pustym polem). Poprawność stawiania xów czy innych jest sprawdzana na bieżąco, więc jeśli spróbujesz postawić iksy dla dwóch różnych zamówień to wyjdzie błąd już w momencie stawiania. Nie jestem pewien, po co numer wiersza, wystarczy że masz w tabeli...
Makro jest w kodzie arkusza REJESTR - reakcja na zdarzenie Worksheet_SelectionChange (wybor kursorem dowolnej komorki w arkusze REJESTR). Makro pisze w N1 (nazwa 'wiersz') numer wiersza w ktorem zaznaczena komorka. Dalej w PROTOKOL'e formula INDEKS wybiera z tego wiersza dane(w przykladzie tylko wartosc PROTOKÓŁ ODWODNIENIA NR: , reszta dopasuj wg tego)...
Powinno pomóc: Niestety nie pomaga. Komunikat pojawia się wtedy, gdy makro pobiera dane z pliku w którym jest trochę większa liczba wierszy. Nie wiem dokładnie jaka jest ta granica (załóżmy że 5 wierszy), ale jeśli plik zawiera jeden, dwa, lub trzy wiersze, wtedy komunikat się nie pojawia. Zawartość schowka to wszystkie dane z pliku z którego makro...
Chciałam, zeby zaznaczyło mi wiersze od 1 do n+1 Do tego użyj Rows. [syntax=vbscript]Rows("n:n").Select[/syn... Choć obawiam się, że koleżanka myli komórki z wierszami.
makro kopiować wiersz makro kopiować wybrać wiersz excel makro kopiować wiersz
skuter zapłon wałka laserowej znajduje filtr oleju
sterownik batavus szlifierka katowa
Renault Modus 1.6 - brak iskry na świecach: przyczyny i diagnostyka Yamaha Tyros 2 nie wykrywa twardego dysku - przyczyny i rozwiązania