[syntax=vbscript]Sub DodajDoBazy() Warunek = 123 owv = Cells(Rows.Count, "V").End(xlUp).Row nwa = Cells(Rows.Count, "A").End(xlUp).Row + 1 For x = 1 To owv If Cells(x, 22) = Warunek Then Range(Cells(x, 22), Cells(x, 26)).Copy Range("A" & nwa) nwa = nwa + 1 End If Next End Sub [/syntax]
Czy ma to znaczenie, że odpalam w LibreOffice? :cunning: No zasadnicze :idea: To tak jakbyś próbował czytać poezję w obcym języku (przy pomocy tłumacza z Google) :please: - VBA i Basic to dwa różne języki programistyczne i trzeba by makra odpowiednio skonwertować. Ani słowa nie było w pierwszym poście: z jakiego programu korzystasz ? :cry: jako załącznik...
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...
Na tą chwilę nie bardzo wiem, jak to poprawić. A przecież specjalnie Ci podpowiadałem :D możesz łatwo uchwycić obszar do aktualnego czyszczenia :arrow: jako obiekt Selection :D tzn. trzeba to zrobić raczej tak :spoko: [syntax=vbscript]Sub dodaj() Dim ile_w As Long Dim kom As Range Application.ScreenUpdating = False With ThisWorkbook.Sheets(ar_kusz)...
[syntax=vbscript]For y = 1 To ile - 1[/syntax]
Dodano po 19 Excel / VBA / wstawianie i kopiowanie wierszy z rozdzieleniem wartości
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 ;)
Nie należy umieszczać w kodzie [syntax=vbscript]On Error Resume Next[/syntax]na wszelki wypadek. Kontrola błędów umożliwia panowanie nad kodem. Można włączać ignorowanie błędów w ściśle określonych miejscach programu, sprawdzać czy istotnie błąd wystąpił, obsługiwać taki przypadek, a później niezwłocznie przywracać kontrolę błędów. Program z totalnie...
Bez zbędnych selectów [syntax=vb]Sheets("Arkusz1").Range("G20"... Destination:=Sheets("Arkusz2").Range("G2...
wszystkie transakcje z tego miesiąca. If Month(kom)=Sheets("Raport").Cells(1, 3) Then
Niestety na służbowym kompie nie zobaczę Twojego pliku, więc tylko kilka wskazówek. 1. Proponuję przygotować szablon do kopiowania w oddzielnym arkuszu, nieużywanym przez kontrolerów. Można tam zapisać w razie potrzeby coś jeszcze, a docelowo można go będzie ukryć. 2. Żeby skopiować obszar (tabelkę), musisz wiedzieć gdzie to trzeba skopiować. Możesz...
Mam nadzieję, że się zrozumieliśmy.
Usuń duplikaty ani tabela przestawna tu się nie przyda bo dochodzi warunek że usuń gdy puste ale nie gdy puste w Re_3 Stworzyłem w sumie proste makro (ono tylko tak wygląda) Pierwsza część kodu przepisuje wszystkie linie mające to samo zlecenie. Później następuje sortowanie. Następnie warunek sprawdza czy (w moim przypadku coś1) się powtarza jeżeli...
[syntax=vbscript]Sub Handlowcy() Sheets("Dane").Select ow = Cells(Rows.Count, "E").End(xlUp).Row For x = 2 To ow For y = 2 To Sheets.Count If Cells(x, "F") = Sheets(y).Name Then nw = Sheets(y).Cells(Rows.Count, "A").End(xlUp).Row + 1 Cells(x, "E").Copy Sheets(y).Cells(nw, "A") Cells(x, "G").Copy Sheets(y).Cells(nw, "B") End If Next Next 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...
Zmienit 'For i = 0 To nrep - 1' na 'For i = 1 To nrep - 1'
zostały skopiowane poniżej tabeli tyle razy ile jest w komórce E10 (Qty - quantity) czyli najlepiej n-1 razy . każda naklejka to jeden wiersz . Jeżeli w danym wierszu pole ilośc (qty) jest większa np 50 to wydrukuje się jedna naklejka . Nie potrafię zrozumieć logiki Twojego arkusza i opisu :cry: Na ogół drukarki drukują z Excela to co jest ustawione...
No tak... W #1 jest Cells(2, 3), czyli C2. Ja użyłem C3, a w ostateczności Ty użyłeś C1.;)
Witam [syntax=vbnet]Sub SumaC() Dim ws As Worksheet For Each ws In Worksheets If ws.Name <> "RYDER" Or ws.Name <> "PORTAL" Then ws.Cells(2, 1).Value = "suma" ws.Range("B2") = "=SUM(I4:I50)" End If Next ws End Sub [/syntax]
Samo się wpisze...
O rety, ale mam zaskok :) W załączniku rozwiązanie z kolumną pomocniczą.
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...
Poproś kogoś innego.
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...
Można zwykłą pętlą For + kopiowanie komórek, np. [syntax=vb]Sub kopiowanie_danych() 'Arkusz1 to jest Worksheets("DANE") 'Arkusz2 to jest Worksheets("WARUNEK") 'Arkusz3 to jest Worksheets("DANE WYJŚCIOWE") Application.ScreenUpdating = False Dim war As String With Arkusz3 war = .Range("A1").Value If .FilterMode Then .ShowAllData .Range("C7:G" & Rows.Count).ClearContents...
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...
Sądzisz kolego, że Twoje wywody nt założonego działania makra są jasne :?: Otóż nie :cry: Zrób przykładowy plik (nawet ręcznie) z symulacją rzeczywistych danych i widokiem przed i po przekształceniach :!: i zamieść go jako załącznik :idea:
Powinno być coś takiego: [syntax=vbscript]Private Sub CommandButton1_Click() Dim ws As Worksheet Dim wrsSrc As Long, wrsDst As Long, kol As Integer Dim sProtokolu As String Dim Znalazlem As Boolean wrsDst = 3 'pierwszy wiersz docelowy sProtokolu = InputBox("Podaj nazwę obiektu lub jego fragment", "Podaj nazwę obiektu", "??") Znalazlem = False With Worksheets("RAPORT")...
I ta opcja jest najopcjejsza.;)
Zamień w odpowiednim miejscu kod na poniższy: [syntax=vb] If b Like "[ ][ ]333" Then p4 = InStr(a, " 4") p7 = InStr(a, " 7") If p4 > 0 Then x4 = Mid(a, p4 + 1, 5) Else x4 = "" If p7 > 0 Then x7 = Mid(a, p7 + 1, 5) Else x7 = "" t = t & x4 & ";" & x7 & vbNewLine End If [/syntax] Wynikiem jest: 11406;42005;70005 11414;42005;79999 11423;44013;70001 11433;;70000...
Ostatni wiersz i ostatnią kolumnę trzeba określić osobno dla każdego arkusza źródłowego. Ale można wykorzystać te same zmienne, bo raz użyte dane nie będą już więcej potrzebne. Coś takiego: [syntax=vbscript]Dim Workbook1 As Workbook Dim lRow As Long Dim lCol As Long With Workbook1 With .Sheets("A") lRow = .Cells(Rows.Count, 1).End.(xlUp).Row lCol =...
Witaj Odpal to makro [syntax=vb] Sub popraw() Dim bs As Range, r As Long Set bs = Sheets(1).Range("A:C").Cells r = 2 While bs(r, 1) <> Empty If (bs(r, 1) = bs(r + 1, 1)) And (Month(bs(r + 1, 2)) - Month(bs(r, 2)) > 1) Then bs.Rows(r).Copy bs.Rows(r + 1).Insert Application.CutCopyMode = False bs(r + 1, 2) = DateSerial(Year(bs(r, 1)), Month(bs(r,...
fragment: [syntax=vbscript] .Cells(Ow - 1, 6).Copy .Range(Cells(Ow, 6), Cells(Ow + Nw - 2, 6)).PasteSpecial _ Paste:=xlPasteFormulas[/syntax] zastąp tym: [syntax=vbscript].Range("F" & Ow - 1 & ":F" & Ow - 1).Copy .Range("F" & Ow & ":F" & Ow + Nw - 2).PasteSpecial _ Paste:=xlPasteFormulas[/syntax] i zmień nazwy kolumn w zakresie....
Witam W pierwszej linii wzoru jest inny
Najprościej [syntax=vbscript]For i = 2 To Sheets.Count Sheets(i).Activate ostw = Range("A" & Rows.Count).End(xlUp).Row Range("A2").Select Do Until ActiveCell.Row > ostw If ActiveCell <> "" Then If Rng.Range("c2").Value <> "" Then Nextrow = Application.WorksheetFunction.CountA(Rng... + 5 Else Nextrow = Application.WorksheetFunction.CountA(Rng...
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...
Proszę o pomoc. Chcę, by z arkusza pierwszego po wciśnięciu przycisku "add" cały dany wiersz kopiował się do czwartej zakładki "zamówienie". Plik ma mieć docelowo ok.200 wierszy, więc chodzi o to, żeby przekleić to makro do kolejnych wierszy. Nie w każdym wierszy w arkuszu 1 będzie wduszony przycisk add, dlatego też program musi wiedzieć, że ma kopiować...
Witam. Proszę Was o pomoc, bo całkowicie zielony jestem w temacie VBA/Excel. przejdę od razu do konkretów. Chciałbym aby z arkusza zawodnicy, po wpisaniu kierowcy, pilota, pojazdu, e-maila, w zależności od wyboru klasy startu np. quad, kopiowało kierowce i pojazd do tabeli w arkuszu quad, jeżeli wybiorę wyczyn - skopiuje mi kierowce pilota i pojazd...
Hej wszystkim Xlsowiczom!:) Niezmiernie chciałabym prosić Was o pomoc w automatyzacji załączonego pliku. Muszę stworzyć coś w rodzaju "ankiety" do wypełnienia dla osób w pracy, które do excela podchodzą z duża odrazą i niechęcią nawet w w przypadku wypełniania danych;) zależy mi na tym aby: 1) w zależności od wpisanej liczby w kolumnie U, chciałabym...
Potrzebuje skryptu vba które zrealizuje mi usuniecie wierszy i ich skopiowanie do innego arkusza jak pojawi sie słowo www. Ma ktos na to pomysł ;-) a sorki troszke nie doprecyzowałem mam 150 wierszy i po nich 151 w którym mam słowo ww. chce by mi usunął i skopiował excel te 150 wierszy do innego arkusza.
[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]
Aby "każdy następny wiersz będzie poszerzał zakres tej tabeli" można by go zapisywać w formacie (.xml) dane wiersza są zapisywane w pionie. (.xml) : <opis> dane_1 /<opis> <opis_a> dane_2 /<opis_a> (.xml) : <NrDomu>542</NrDomu> <NrLokalu>355</NrLokalu> <KodPocztowy>00-673</KodPocztow... <Miejscowosc>WARSZAWA</Miejscow...
Czy wiesz, że w "Arkusz2" prawdopodobnie w wyniku kopiowania, wklejania a następnie usuwania wierszy jest ponad 500 przycisków o nazwie "CommandButton1"? Kiedyś był już podobny temat poruszający ten problem. Kopiowanie i wstawianie wiersza z przyciskiem działa OK, ale usunięcie wierszy powoduje układanie się obiektów w stosik, z których widoczny jest...
Trzeba dołączyć nie obrazek, tylko plik Excel, a następnie można pokazać na Twoim przykładzie. W skrajnym przypadku powinny być widoczny nazwy wierszy i kolumn.
Jednak wtedy kopiowanie danych różniących się do "pustych miejsc" trzeba będzie dokonać "na piechotę" Jeśli w kolumnie "title" nie będą występowały powtórzenia danych (duplikaty) to całą robotę wykona proponowana formuła przeciągnięta do dołu wynikowej tabeli :-)
może być, tylko żeby kopiowało całe wiersze do nowego arkusza
Podałeś zdecydowanie za mało informacji. Jeśli Twoje dane robocze liczą ok. 10 tys. wierszy, to przykład powinien obejmować ok. 50 wierszy w reprezentatywnym układzie. Należy to pokazać w załączonym pliku wraz z oczekiwanym wynikiem. Z przykładu, który pokazałeś nie wynika m.in. 1) czy wszystkie wartości w kolumnie A występują parami, czy mogą też być...
W załączeniu przykład z funkcjami Wprowadziłem dodatkowe "zabezpieczenie" w postaci tego że każda lista musi się kończyć słowem KONIEC. Jeżeli tak nie jest to znaczy że jest więcej "poleconych" niż skopiowanych w dół wierszy z formułą wyszukującą. Wtedy trzeba "złapać" trzy ostatnie komórki i skopiować w dół. -------------- No tak, kolega adamas mnie...
No, no jesteśmy na dobrej drodze :) . Wszystko ładnie, z tym że po zmianie daty powinny być kopiowane następne wiersze. W załączniku przykład To proponuję wpierw określić, co się chce osiągnąć całościowo, a nie stopniować sobie na zasadzie 'jak już mam to, to może i coś innego też ... ' :D Do tej pory była mowa tylko o kopiowaniu 3 wierszy, nawet na...
Kopiowanie formuł jest właściwością tabeli i w zasadzie sposób odwoływania się nie powinien tu mieć znaczenia. Mnie jednak po przekształceniu zwykłego zakresu w tabelę, to od razu nie zadziałało, dlatego zmieniłem sposób odwołania. Można też raz skopiować formułę, a potem powinno już działać automatycznie. Jeśli po wpisaniu czegoś do kolumny C chcemy...
Możesz zastosować takie makro: [syntax=vbscript]Sub Kopiowanie2() ' ' Kopiowanie2 Makro ' Dim lw As Long, i As Long, j As Long Sheets("Arkusz1").Activate '1 lw = Cells(Rows.Count, "A").End(xlUp).Row '2 j = 1 '3 For i = 2 To lw '4 Range("A" & i & ",B" & i & ",D" & i & ",F" & i).Copy _ Destination:=Sheets("Arkusz2").Range("A" & j).Resize(Range("G" & i))...
Bardzo Was proszę o pomoc bo jest świeży w tym temacie. Kto jest świeży w temacie?
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...
Witam. Siedzę już dwie noce nad makrem i nie mogę go ruszyć. Temat: Arkusz z tabelą danych A12:I12 wielkość tablicy 30000. Mam Stworzyć drugi arkusz który by pobierał całe wiersze z pieszego. Ponadto , kolumnie In są warunki utworzenia nowych arkuszy. Reasumując tyle ile będzie różnych zmiennych w I tyle będzie nowych arkuszy. Reasumując Sortowanie....
kopiowanie wierszy wybranych excel kopiowanie wierszy kopiowanie wierszy makro
solid relay część komutatora iskrzy parametry głośników kenwood
nastawnik turbo pilarka spalinowa
Brak śruby regulacji gaźnika w pilarce spalinowej Xerox B210 błąd C3-5140 – kaseta z tonerem, chip, czujnik ATC, zamienniki