Makro, które zamieściłeś powinno być umieszczone w module uniwersalnym skoroszytu, a odwołuje się ono do arkusza aktualnie aktywnego oraz do arkusza o nazwie "Baza". Ponieważ w kodzie są pętle po wierszach i kolumnach, a ich adresy początkowe są zapisane na sztywno, to struktura (w sensie umieszczenia początku danych) musi być jednakowa dla wszystkich...
[syntax=vb]Sub kopie_zakres() With Sheets("Arkusz3") pw = .Cells(Rows.Count, 1).End(xlUp).Row + 1 Sheets("Arkusz2").Range("A2:Y2").Copy .Cells(pw, 1) End With End Sub [/syntax]
Zamiast If Left(LTrim(.Cells(i, 11)), 4) = tekst Then podstaw If InStr(.Cells(i, 11), tekst) > 0 Then i analogicznie w drugim przypadku. p.s. Zdaje się, że w pliku nie postawiłem kropek przed przed Cells. Z drugiej strony aktywnym jest arkusz ostatnio otwarty, ale dla porządku...
:) Antoni nie denerwuj się tylko popatrz na własny przykłąd. W której kolumnie arkusza "Roczny" umieścił byś dane wg twojego opisu? Gdyby nie było takiego przypadku można by było uprościć kod a tak trzeba sprawdzić czy się nie mylisz bo będzie wywalać błąd. [syntax=vb]Sub Przenies() Dim x As Integer, nrKol As Integer 'Sprawdzenie za pomocą licz.jeżeli()...
:) Naprawdę nie stosowałem tu żadnego zabiegu. :) Może "Forum" tak współpracuje z twoja przeglądarką/monitorem. Ja mam IE8 i IE9 (w zależności od kompa) i monitor 21 calowy w rozdzielczości 1920x1080 jak wchodzę na ten topik widzę cały kod, te kody o wiele dłuższe też (nie mam pasków przewijania) a odnośnik "zwiń" / "rozwiń" przy "Kod Visual Basic"...
Nie da się tak jak chcesz. Jeżeli chcesz skrócić klikanie wyciągnij przycisk autofiltru na pasek menu. (poprzez dostosuj - wyrobekj tylko że grupa Dane i Autofiltr]) Wtedy po skopiowaniu i wklejeniu danych masz je od razu zaznaczone więc wystarczy kliknąć tylko w przycisk i już masz autoflitr.
.. Nie wiem jak zmienić w pierwszej części programu aby kopiował z innego arkusza... [syntax=vb] Sheets("Arkusz1").Select Range("G20").Select Selection.Copy Sheets("Arkusz2").Select Range("G20").Select ActiveSheet.Paste[/syntax]
jezeli bedzie to robic na na jednym i tym samym kompturze to pocelam scriptit, mam kilka "programow" w tym napisanych np: nowy word, wstaw ze schowka, wstaw date, ustaw drukarke oraz strone, wydrukuj ...
Zerknij do załącznika. Kod zoptymalizowałem przy okazji... Zrobiłem przykładowe kopiowanie z trzech kolumn, aby było łatwo połapać się przy modyfikacji.
Kopiowanie zrobisz np tak: [syntax=vbnet] Sub Podzial() Dim Y As Long, R As Range Y = 2 Do While Cells(Y, "A") <> "" With Sheets("XXX" & Cells(Y, "B")) Set R = .Cells(Rows.Count, "A").End(xlUp).Offset(1, 0) Range("A" & Y & ":E" & Y).Copy Destination:=R End With Y = Y + 1 Loop End Sub [/syntax] Działa, jeżeli masz przygotowane wszystkie...
niestety Akcesa nie posiadamy w firmie I właśnie dla takich, jak Wy istnieje darmowy Access Runtime. P.S. Wybacz Kolego, ale ciężki z Ciebie przypadek... Co Ci się nie podoba w powyższym rozwiązaniu?
Range("A5").Copy Sheets("arkusz2").Range("c" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues
Lepiej opisz konkretne zadanie które ma ten arkusz wykonywać bo może to się da załatwić lepiej. Chodzi o wybranie jakichś konkretnych danych spełniających określony warunek? To można zrobić np. przy pomocy tabeli przestawnej.
Zrobiłby to w ten sposób: (dopisz formuły w szarze komorki)
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...
Nie ma problemu - zmienimy pętlę warunkową na zwykłą. Na marginesie, jak widać w twoim załączniku, numery pisma przy "anulowaniu" dokumentu też są usuwane. Najpierw sprawdzimy ile jest wierszy, a potem pętlą będziemy sprawdzać czy wiersz nie był już skopiowany i czy ma numer zadania. Jeżeli tak to go przerzuci, jak nie "pójdzie" dalej. (taki wiersz...
Dołączam arkusz bo już mi się pomysły kończą. Przecież Ci napisałem, co masz zrobić. Zamień format znaków w kolumnie A i E na liczbowy. W załączniku Twój działający arkusz.
Dla mnie trochę przerost formy no ale każdy ma swój styl programowania. Zauważ że warunek w głównej procedurze wyjkonuje się jedynie gdy nie ma arkusza o danej nazwie. W przeciwnym wypadku nie robi nic. Proponuje dodać "w przeciwnym wypadku - gdy warunek jest niespełniony" czyli Else i ustawić temp na istniejący arkusz o danej nazwie. Z tym że wyjąć...
Pożądany efekt aktualizacji tabeli w arkuszu "3" 961000 można uzyskać poprzez makro aktualizujące (odświeżanie danych skrótem ctrl + a :D ) z zastosowanie pętli typu: 961004
Zbliżone działanie do pożądanego :D tj. przenoszenie danych z katalogu do oferty przy pomocy dwukliku (makro działa pojedynczymi wierszami - oczekując na wpis ilości do oferty :ok: patrz na zrzut ) 978389 Drugie makro w "ofercie" usuwa wybrane wpisy (wybrany indeks :!: ,a przy okazji ilość :D ) 978391
Czy te 4-ry "kolejne" arkusze należące do jednej grupy "cyfrowej", np.: 0202 (SUMA, WDT, WNT, WŚU) znajdują się jeden za drugim, czy też mogą być porozrzucane pomiędzy innymi arkuszami z innych grup numeracyjnych, np.: 0202SUMA, 0205WDT, 0202WDT, 0203WŚu, itd. ?
[syntax=vbscript]Sub KopiujGLM() g = Cells(Rows.Count, "G").End(xlUp).Row Range("G1:G" & g).Copy Sheets("Arkusz2").Range("G1") Sheets("Arkusz2").Range("G" & g + 1).Formula = "=SUM(G1:G" & g & ")" l = Cells(Rows.Count, "L").End(xlUp).Row Range("L1:L" & l).Copy Sheets("Arkusz2").Range("L1") Sheets("Arkusz2").Range("L" & l + 1).Formula = "=SUM(L1:L" &...
na przykład, tak: [syntax=vb] Sub myCopy() Dim wb As Workbook, ws As Worksheet Dim ms As Worksheet ara = Array("D3", "C7:C32", "F7:F32") Set ms = ThisWorkbook.ActiveSheet Set wb = Workbooks.Open("43.01") Set ws = wb.Sheets(ms.Name) For Each rng In ara ms.Range(rng).Copy ws.Range(ara) Next End Sub [/syntax]
Gwoli ścisłości: sprawdzanie poprawności danych nie chroni przed kopiuj-wklej z innego arkusza (czytaj: robiąc kopiuj-wklej i tak możesz wkleić w komórki dowolną wartość). Ale, nie ma rozwiązania idealnego.
Witam. Jak stworzyć makro, które w Arkuszu1 we wszystkich wierszach w kolumnie A wyszuka komórki w których znajduje się wartość np "b2" (wartość b2 jest częścią ciągu jakiś znaków w danej komórce np. takb2abc) a następnie wklei wszystkie znalezione komórki ( z całą zawartością ) do kolumny B w Arkuszu3?
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
pokazyje błąd. Nie powinno tak być, albo nie rozumiem. WYSZUKAJ.PIONOWO(A1;Y!A:B;2;0) tylko wtedy, jeśli LICZ.JEŻELI(Y!A:A;A1)>0 Innymi słowy jeśli w Y jest, w przeciwnym razie zapisz ""(empty string) Czy możliwe by nie zmieniał komórki Arkusza X. jesli nie wyszuka w Arkuszu Y odpowienika ? Nie, bo jesteśmy wszystkie formuły przepisze w klatki kolumny...
Przykład (z kolumną pomocniczą) w załączniku. Dalej: w arkuszu wynikowym formuła oparta o funkcje: INDEKS, PODAJ.POZYCJĘ, WIERSZ. Podobny temat [url=http://www.elektroda.pl/rtvforum/to... Zwróć uwagę na kolumnę pomocniczą "L" oraz wynikową "I".
Zakładając, że nagłówek znajduje się w pierwszym wierszu: [syntax=vbscript]Sub WszystkieArkuszeDoJednego() Sheets.Add.Name = "Podsumowanie" Application.ScreenUpdating = False nwp = Sheets("Podsumowanie").Cells(Rows.Count, "A").End(xlUp).Row For x = 1 To Sheets.Count Set sh = Sheets(x) If sh.Name <> "Podsumowanie" Then ow = sh.Cells(Rows.Count,...
Innymi słowy nazwy plików jak i nazwy arkuszy w "" a poprawnie jest wokbooks a nie workbook
[syntax=vbscript]Sheets("2").Range("C1")... = vbRed[/syntax]
Witam wszystkich Mam problem z małym kodem vba do kopiowania arkuszy w tym samym pliku. Posiadam arkusz Szablon. Po jego uzupełnieniu przy kliknięciu na button chciał bym, żeby cały arkusz Szablon kopiował się do nowego arkusza, którego nazwa będzie podana w komórce P1 (jest to nazwa miesiąca). Próbowałem kilku sposobów, ale nie chciało mi skopiować...
Po zakończeniu kopiowania nie jest zwracania na pierwszy arkusz
Zamień Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("wiersz") = Target.Row End Sub na Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("N1") = Target.Row End Sub Usuń nazwy 'wiersz'. Odwołania w formułach =INDEKS('ZB1'!A:A;wiersz) Zamień na =INDEKS('ZB1'!A:A;'ZB1'!N1)....
[syntax=vbscript]Sub Kopiuj() Sheets("Arkusz1").Select ow = Cells(Rows.Count, "A").End(xlUp).Row y = 1 For x = 1 To ow If Cells(x, "C") > 30 Then Range("A" & x & ":D" & x).Copy Sheets("Arkusz2").Range("A" & y) y = y + 1 End If Next End Sub [/syntax]
[syntax=vb] For i = LBound(Zrodla) To UBound(Zrodla) Worksheets("txt").Range(Cele(i)) = Worksheets("oferta").Range(Zrodla(i)).Va... Next i [/syntax]
Zobacz takie rozwiązanie.
Zdaje się, że przypisujesz źle do newName . Nazwa różni się od newPath , pod którą zapisujesz plik. Sprawdź krokowo. Nie będzie prościej zapisać plik (me.SaveAs) z inną nazwą? Zawartość ma być przecież identyczna. P.S. Kod umieszczaj w znacznikach syntax. Post poprawiłem [mod].
No tak. Mój błąd, bo powinno być w innej kolejności. Sorry, ale dzisiaj sobota ;) Coś tam (w załączniku) kopiuje. Przeanalizuj, dostosuj do własnych potrzeb.
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...
Potrzebuję makro, które pomogło by Jeśli chcesz gotowy, staraj się nie powodować niepotrzebnych prac, temu kto by mogł pomoc. Które naprawdę powinny być format pole 'numer artykułu ' bo na jednej stronie to tekst(arkusz1) na inny numer(arkusz2)?
Wybor spolki - lista lub kursor na skrocona nazwe
Wystarczy np. taka prosta przeróbka: [syntax=vb]strPlik = Application.GetOpenFilename("Pliki Excela (*.xlsx),*.xlsx", 2) sFileName = Split(strPlik, "\")(UBound(Split(strPlik, "\"))) If strPlik = "False" Or UCase(Left(sFileName, 3)) <> "KWS" Then Exit Sub End If[/syntax]
Na tej liście w Arkuszu1 brakuje komórki z kolumny E. Mam nadzieję, że to nie przeoczenie. Ponieważ łatwiej jest kopiować po kolei, więc wykonuję to jedno dodatkowe kopiowanie w pętli, a później nadpisuję skopiowaną wartość. A tak w ogóle to powinien być Twój załącznik! Proponuję taki kod (też uruchamiany dwuklikiem w wierszu, z którego chcemy kopiować):...
Nie bardzo rozumiem kopiowanie 'pp1' i oddzielne tworzenie nowego arkusza. Może chodzi Ci o to? [syntax=vbscript]Sub DodajPP() Dim n As Integer n = Val(Mid(Sheets(Sheets.Count).Name, 3)) n = n + 1 Sheets("pp1").Copy After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Name = "pp" & n End Sub [/syntax]
Jeśli liczysz na konkretną pomoc :?: - to winieneś załączyć swój przykładowy plik z odpowiednio opisanym arkuszem źródłowym i arkuszem docelowym :idea: Wcześniej możesz przeanalizować zasoby naszego forum w zakresie importu lub eksportu danych z jednego arkusza do drugiego :idea:
Podsumujmy: 1a. Czy powyższy kod ma kopiować do arkusza "Zbiorczo" ostatni wiersz z innych kopiowanych arkuszy, 1b. Czy też powyższy kod ma kopiować do arkusza "Zbiorczo" wszystko (jakaś tabela, zakres komórek, itd.) z innych kopiowanych arkuszy, ale robi to pomijając ostatni wiersz Pytanie: Z jakich arkuszy i skąd one są kopiowane - z jakiegoś innego...
[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...
:D Mam nadzieję, że to nie jest odpowiedź dla mnie. :D Przygotowałem przykład z wysyłaniem mailem wraz z załącznikiem (jak ktoś ma skonfigurowanego outlooka). Można popatrzeć - tylko najlepiej stworzyć jakiś katalog i tam zapisać wcześniej plik. Wtedy też będą się tworzyć w tym katalogu wysyłane załączniki. Oczywiście wcześniej trzeba pozwolić na włączenie...
Witaj nie tylko dane ze wskazanej daty, ale cały zakres od tej daty Ale jutro dane chcieliby zamknąć tych, które zostały skopiowane dzisiaj. To nie Zawada? Dodano po 17 [syntax=vb]Sub kopie() Sheets("konsolidacja danych").Activate With Sheets("plan") szerok = Application.CountA(.Rows(2)) - 1 wysoko = Application.CountA(.Columns(2)) - 1 kolumn = Application.Match(.Cells(1,...
[syntax=vb]Sub lista() Dim r& r = 2 For Each sh In ThisWorkbook.Sheets If sh.Name <> "Lista" Then Sheets("Lista").Cells(r, 1) = sh.Name r = r + 1 End If Next End Sub [/syntax]
O rety, ale mam zaskok :) W załączniku rozwiązanie z kolumną pomocniczą.
Twój kod - nie będę się wtrącał. wg mnie wystarczy dodać nazwę arkusza przed cells żeby było pewne skąd pobiera się x czyli: x = Arkusz.cells(1,1).value A może wystarczy usunąć cudzysłowy z cells("1,1") - bo u mnie cos takiego nie zadziała.
Spróbuj [syntax=vb]Sub Makro_kopiowanie() ' This macro will import a file into this workbook PathName = Range("D3").Value Filename = Range("D4").Value ControlFile = ActiveWorkbook.Name wrs = 5 'nazwy arkuszy od "D5" Workbooks.Open Filename:=PathName & Filename Windows(ControlFile).Activate With Sheets("Podsumowanie") Do While .Cells(wrs, 4) <>...
To naprawdę prosta sprawa. Przeanalizuj dostosuj do własnych potrzeb.
To nie jest proste zadanie. Ustawienie filtra nie generuje żadnego zdarzenia, które można byłoby przechwycić, żeby zapamiętać jego ustawienie. Szczęśliwie masz w arkuszu formuły z funkcją SUMY.CZĘŚCIOWE, które przeliczają się po zmianie ustawień filtra, a przeliczanie generuje zdarzenie Calculate, które można tu wykorzystać. Makro, które proponuję zapamiętuje...
Dzięki Tez tak chciałem zrobić, tylko miałem błędy (literówki w kodzie), wiec szukałem na około jak to zrobić. Jeszcze raz dziękuje za podpowiedz.
O coś takiego chodzi? [syntax=vb]Application.ScreenUpdating = False ost_w = Range("A" & Rows.Count).End(xlUp).Row poz = 2 For Each c In Range("A2:A" & ost_w) If InStr(c.Value, "www") > 0 Then Rows("2:" & c.Row - 1).Copy Destination:=Arkusz2.Rows(2) Rows("2:" & c.Row - 1).Delete shift:=xlUp Exit For End If Next c Application.ScreenUpdating = True[/syntax]
Namotałeś z tym kodem. Skąd dokąd i co chcesz kopiować?
Piszesz taką formułę =Dane!C1 I kopiujesz ją w bok i dół Jeżeli o to chodzi. Strasznie banalne rozwiązanie, ale generalnie o to chodziło Dzięki! :)
Witam! Może ktoś pomoże. Problem jest nastepujący: W arkuszu1 mam dane: Kolumna A ( np: 20 nazwisk), kolumnach B,C,D dane handlowe dotyczące tych 20 ludzi. Codziennie wpływają nowe dane. Nastepne arkusze 2,3...21 nazywam nazwiskami tych handlowców, w których mam już skopiowane dane z poprzednich dni. Kopiowanie odbywa sie recznie.To jest:Kopiowanie...
Może takie rozwiązanie Ci będzie pasować: [syntax=vb]Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 5 Then w = Target.Row nw = Sheets("Arkusz2").Cells(Rows.Count, "A").End(xlUp).Row + 1 Range("A" & w & ":D" & w).Copy Destination:=Sheets("Arkusz2").Range("A" & nw) Range("A" & w & ":D" & w).Clear Cancel...
Witam Mam taki problem posiadam arkusz1 i chciałbym za pomocą przycisku skopiować wiersz 1 do arkusza2 pod ostatni wypełniony wiersz. Problem w załączniku. Dzięki za pomoc
czołem, sprawę rozwiązałem zupełnie inaczej. Skorzystałem z makra które kopiuje wszystkie wartości do innego arkusza ( same czyste dane ) a później z nich za pomocą tego co napisałem wcześniej. Plik zmnieszył swoją wagę i działa całość o wiele szybciej :)
Mam inną wersję AD, ale myślę, że w Twojej też to zadziała. Jeśli potrzebuję zrobić kilka wydruków zaprojektowanej płytki, po prostu ją zaznaczam, kopiuję, a potem na innym, większym arkuszu wklej, wklej ... tyle razy ile potrzebuję. Bez korzystania z "Roomów".
Jeżeli chcesz się dalej uczyć to proponuję kolejne ćwiczenie: zrób to samo wyciągając parametry kopiowanych obszarów do pomocniczego arkusza sterującego, tu lepsza będzie pętka do while po wszystkich niepustych wierszach arkusza pomocniczego. Czyli wpisujesz w 1 wierszu nazwę arkusza (np w A2) i nazwę obszaru (np w B2 => I1:I), a potem kopiujesz: [syntax=vbscript]...
żeby kopiowało tak jak kopiuje ale bez otwierania np. zmiana1 i zmiana2 Makro działa w chwili otwarcia arkusza "podsumowanie". Wszystkie dane które były wprowadzone w zmiana1, zmiana2, zmiana3 makro kopiuje i wykasuje dane z arkuszy zmiana1, zmiana2, zmiana3. Jak w piątek nie otwierac "podsumowanie", dane pozostaną aż do poniedziałku, a raczej do czasu...
https://obrazki.elektroda.pl/9936064400_...
witam, w jednym arkuszu mam podstawową bazę danych typu: kolumna A-Nazwa firmy; B-adres; C-miejscowość itp. jest tych danych ok 8 kolumn. Jak zrobić by można był kopiować poszczególne dane danej firmy d inego pliku, w tórym wklejone te dane będą w odopowiednie rubryki. Dlateg ochce w odpowiednie rybryki, gdyż będą one wypełniać 4 następne arkusze które...
Tak mi podpowiadano, ale widocznie mam złego doradcę :D
Może to zupełnie błędny trop ale ... Tak mi ten działanie myszki na filmiku dziwnie wygląda, fakt nie widać jak jej używasz, próbowałeś użyć innej myszki ?
Tak jak napisałam, chodzi mi o przyspieszenie kopiowania arkuszy i wklejania do innego skoroszytu. Chcę całkowicie z klawiatury wywołać polecenie "Przenieś lub kopiuj" arkusz. Przechodzenie pomiędzy arkuszami to elementarz ;-)
O to mi chodzi że jak mam arkusz cudzej osoby i dam tylko ,,zapisz jako" i dam inną nazwę czy tamta stara gdzie pozostanie w arkuszu i będzie do niej można dotrzeć? lub jak skopiuję formułę z jednego arkusza do drugiego czy takie coś też będzie gdzieś występować?
[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]
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...
Dzień dobry, tak właśnie chodzi mi o usunięcie pustych komórek. Dodano po 3 Numer tygodnia będzie kopiowany z innego arkusza, a zawartość po filtrowaniu będzie przenoszona na inny arkusz, dlatego zatwierdzanie wyboru jest dość kłopotliwe, bo trzeba ten arkusz otworzyć i zatwierdzić.
zrób np. tak (wstawi ci na koncu) [syntax=vb]ActiveSheet.Copy After:=Workbooks("wczyt.xlsm").Sheets(Sh...
Np filedialog: .Filters.Add "Pliki Excel", "*.xls" Można i bez otwierania. Spróbuj coś z makr Excel4 arg = "'" & p & "[" & f & "]" & s & "'!" & Range(r).Range("A1"... , xlR1C1) ExecuteExcel4Macro(arg) Gdzie p to ścieżka do pliku, f nazwa...
Musisz sprawdzać n znaków w nazwie arkusza (zależy od formatu zapisu daty w nazwie). Nazwa arkusza jest typu String , więc nie ma z tym problemu. Najprościej nazwy sprawdzać w pętli For , wybierając właściwy instrukcją [syntax=vb]If Right(nazwa_arkusza, n) = komórka_ z_datą_we_właściwym formacie Then[/syntax]
Witam. Mam arkusz "obliczenia" w którym są dane liczbowe i puste komórki. Zależało by mi aby makro działało w następujący sposób: 1. po pojawieniu danych w tym arkuszu "obliczenia" makro samo się uruchamiało. 2. Chciałbym aby kopiowały się te dane, które są większe od zera( dokładniej nie kopiowało pustych komórek). Dane są od komórki F4. 3. makro...
Witaj [syntax=vb] Dim Sh As Worksheet Dim intName As Integer Dim shName As String Dim strNazwa As String ActiveWorkbook.Sheets("Template").Copy After:=ActiveWorkbook.Sheets("Template") strNazwa = "projekt" ' tutaj ustawiamy jak ma wyglądać początek nazwy arkusza intName = 0 For Each Sh In ActiveWorkbook.Worksheets shName = Sh.Name If Left(shName, Len(strNazwa))...
Witam. Nie mogę uporać się z kopiowaniem zmiennego zakresu z jednego arkusza do drugiego. Sytuacja wygląda następująco. Z arkuszua1 kopiuję zakres np. A2:M20 (ilość kolumn jest zawsze stała, ilość wierszy się zmienia) i musze go wkleić do arkusza2 od kolejnej niepustej komurki w kolumnie A. Z góry dzięki za wszelką pomoc. Pozdrawiam MałyLesiu
Witam, może ktoś umie robić coś na kształt jeżeli(wyszukaj poziomo(. Ja próbowałem problem z moimi danymi rozwiązać jak poniżej i ale niestety lipa. Pozdrawiam i z góry dziękuję za pomoc. Marcin Dargiewicz [syntax=vb] Sub ProduktyNieaktywne() Dim plik1 As Workbook, plik2 As Workbook Dim i As Long, c As Variant Dim Omega As Long Dim znajdz As Variant...
rozumiem że to tylko część makra? Oczywiście, to tylko fragment kodu, który wykonuje jedynie to co napisałem wyskoczy okienko, w którym będzie można wybrać pliki excela z dysku komputera Po wyborze konkretnego pliku :D możesz kopiować całe arkusze lub wybrane dane do swego pliku zbiorczego. Ta część makra uzależniona jest od specyfiki plików źródłowych...
Spróbuj takiego makra. [syntax=vbscript] Sub Kopiowanie() Dim arkA As Worksheet, arkB As Worksheet, arkZest As Worksheet Dim OstA&, OstB&, GdzieWkleic&, PierwszyWiersz%, IleKolumn% Set arkA = ThisWorkbook.Worksheets("aaa") Set arkB = ThisWorkbook.Worksheets("bbb") Set arkZest = ThisWorkbook.Worksheets("Zestawienie") OstA = arkA.Cells(Rows.Count,...
aby od aktywnej komórki ma być kopiowana z innego arkusza do aktywnej komórki w tym arkuszu Aktywna komórka nie może być jednocześnie w arkuszach.
Tak, to mój cytat.
Sposobów na rozwiązanie tego problemu jest kilka - tylko te bardziej wydajne mogą być trudniejsze do zrozumienia / zapamiętania dla kogoś początkującego. Dlatego poniżej najprostszy przykład, z pętlą (w zasadzie dwoma): najprostszy, ale i najmniej wydajny... Dla małej ilości danych powinien działać OK. Pytaj, gdyby coś było niejasne. [syntax=vb]Private...
Zrozumiałem (w końcu) :) Kłopotem jest tu ilość tych arkuszy Ex1. Żadna formuła z bezpośrednim wskazaniem komórek źródłowych nie wejdzie bo będzie za długa. Prawdę mówiąc lepiej by było to "łączyć" w accessie. Może zrobić 12 plików pomocniczych z 70 arkuszami i jednym głównym sumującym te arkusze. Każdy z arkuszy byłby połączony z konkretnym plikiem...
Dostosowałem makro z w/w tematu. Nie testowałem zbytnio, ani nie testowałem istniejących procedur. Ale na zakończenie usuwana jest zawartość arkusza "TEMP", dlaczego?
Wstawiłem tabelę, włączyłem rejestrator makr, zmieniłem nazwę w 'Narzędzia tabel'. Nagrało się m/in: https://obrazki.elektroda.pl/2689543600_... Odpowiedź: Tak, można
Witam Jestem zupełnie zielony jeśli chodzi o makra i potrzebuję pomocy szanownych kolegów. Mam w arkuszu dane, dużo kolumn i dużo wierszy. Prosiłbym o pomoc w napisaniu makra, które sprawdza wartości w jednej z kolumn np BT i jeśli w aktualnie sprawdzanej komórce występuje jakaś wartość (komórka nie jest pusta) kopiuje cały wiersz do innego arkusza,...
Witam, potrzebuje na szybko zrobić w Excelu 2003 takie coś Arkusz1 wierszA1 opcja 1 wierszA2 opcja 2 wierszA3 opcja 3 wierszA4 opcja 4 wierszA5 opcja 5 ... Chcę aby była możliwość kliknięcia w opcje lub poprzez zaznaczenie ptaszka V w kwadraciku (kwadracik najlepiej w osobnej kolumnie), i chcę by zaznaczona opcja się kopiowała do arkusza 2 który będzie...
było by super Co było by? Testowalem Twój kod na XL2007 i XL2003 (inne nie mam) - wszystko dziala poprawnie
[syntax=vb] Sub Wyslij() Dim bs As Range Dim r& Set bs = Sheets("zbiorczy").Range("A:L") r = bs(Rows.Count, 1).End(xlUp).Row + 1 bs.Rows(r) = bs.Rows(1).Value Range("b6:c10").ClearContents End Sub [/syntax]
Tu masz kod tego makra. Procedurę SzukajUlicy() podepnij pod jakis przycisk. Myślę, że z resztą sobie poradzisz. [syntax=vb] Option Explicit Sub SzukajUlicy() Dim ws As Worksheet Dim lWiersz As Long Const lKolumnaUlicy As Integer = 5 'E lWiersz = 4 'początkowy wiersz zawierający dane Dim sNazwaUlicy As String Dim Znalazlem As Boolean sNazwaUlicy = InputBox("Podaj...
[syntax=vbscript]Sub Makro() Sheets("Arkusz1").Select a = Application.Match("W", Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row), 0) nw = Sheets("Arkusz2").Cells(Rows.Count, "A").End(xlUp).Row + 1 If Not IsError(a) Then Sheets("Arkusz2").Range("A" & nw) = Range("B" & a) Rows(a).Delete End If End Sub [/syntax]
Ciezko sie trochu domyslec o co dokladnie pytasz, ale jesli dobrze zrozumialem to w arkuszu rok2005 w dowolnej komorce wstaw: =JEŻELI(Rok2000!AI3=1;Rok2000!AP3;"") i bedzie kopiowalo zawartosc AP3 pod warunkiem wartosci "1" w AI3, Prawie to samo co wyzej tyle ze nawiasy gdze indziej.
Proponuję: 1) Zamiast formuły z funkcją JEŻELI zastosować formułę z funkcją MAX. Uniknie się w ten sposób dwukrotnego odwołania do tych samych danych. 2) Jeżeli będziesz przestrzegał zasady, że nowe arkusze są dodawane zawsze na początku (a nie na końcu, jak robi się zazwyczaj), to będziesz potrzebować zawsze odwołań do następnego arkusza w kolejności....
od O2:O17 jest Gdańsk I ten zakres kopiujemy do L23, a co mamy zrobić z kolejnym miastem, zakres O18:30? Chcesz się poduczyć, czy oczekujesz gotowca? Jak to pierwsze, to lepiej na jakimś komunikatorze, a nie tutaj.
kopiowanie wierszy innego arkusza kopiowanie arkusza makro kopiowanie arkusza
podgląd rejestrator filtr cząstek stałych pomiar rezystancja uziemić odgromowy
hewalex sterownik hewalex sterownik
Seat Leon 3 (5F) – ciągle świecące światła STOP, czujnik hamulca, BCM, diagnoza Vestel 17IPS72 Power Board Software for Toshiba TVs – Firmware Info and Mainboard Models