Metoda PrintOut z klasy workshet nie powiodła się Uruchamiasz makro z aktywnego arkusza "formularz" :!: a drukujesz inny arkusz "oswiadczenie" :idea: Twój wcześniejszy kod jest jednoznaczny :D tj. ActiveWindow. Selected Sheets
Zamień linię: ActiveWorkbook.SaveAs "C:\MONTH CLOSING\FY2013\MAKRO&FILES\FY2013\P&L BY MONTH_values\FY2013\October YTD\CUSTOMERS FILES\" & Arkusz.Name na: ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ "C:\MONTH CLOSING\FY2013\MAKRO&FILES\FY2013\P&L BY MONTH_values\FY2013\October YTD\CUSTOMERS FILES\" & Arkusz.Name & ".pdf", Quality:=...
Z arkusza1 robię raporty w osobnych arkuszach Efekt taki jak na zrzucie 1041538 automatycznego kopiowania wyfiltrowanych danych z arkusza1 do kilku arkuszy :idea: (z nazwami arkuszy wg filtrowanych danych :D ) można zrealizować przykładowo tak jak w załączonym pliku. 1041541 Makro można uruchomić skrótem klawiaturowym ctrl+r :!: , dla dowolnej (jeśli...
Po pierwsze: z którym fragmentem nagranego kodu masz problem? Po drugie: Nagraj makro kopiowania całego arkusza do nowego pliku ze zmianą jego (pliku) nazwy. Masz 100% gwarancji zachowania formatowania. Jeśli w arkuszu jest nadmiar danych można dopisać usuwanie. Jeśli jesteś początkujący, to nagrywarka jest podstawą. Przykład: To jest nagrane makro...
Tak prawie Sub PrzyciskDrukuj() Application.ScreenUpdating = False If Sheets("Arkusz3").Rang... = True Then Sheets("Arkusz2").Sele... ActiveWindow.SelectedSheets.PrintOut Copies:=1 ElseIf Sheets("Arkusz3").Rang... = True Then Sheets("Arkusz3").Sele...
W wolnej chwili wyklikałem na klawiaturze kilka linijek. Wydaje mi się, że wygodniej będzie Ci przystosować mój krótki kod. [syntax=vb]Sub Podziel() Dim a As String, a1 As Worksheet Set a1 = Sheets("Arkusz1") ow = Cells(Rows.Count, "D").End(xlUp).Row f = True Sheets("Arkusz1").Select For x = 5 To ow a = a1.Cells(x, 16) If f Then y = x f = False End...
[syntax=vbscript]nazwa = ActiveCell.Value With ThisWorkbook .Sheets("wzor rodzinne").Copy ActiveWorkbook.SaveAs .Path & "\rodzinne\" & _ nazwa & ".xls" ActiveWorkbook.Close End With[/syntax]
Można to osiągnąć za pomocą funkcji tablicowych np. tak. Formuła działa dla każdego wiersza. https://obrazki.elektroda.pl/1892042000_...
Po zakończeniu kopiowania nie jest zwracania na pierwszy arkusz
Proszę krok po kroczku 1. "Baza danych" musi mieć identyczną budowę (jeśli chodzi o kolumny) jak arkusz spisowy (zwłaszcza pod względem komórek scalonych :!: ) :arrow: najlepiej zrobić do wydruku kopię arkusza "Arkusz danych (2)"; 2. Ze wzoru arkusza spisowego robisz zrzut stopki wydruku 932190 3. W "Arkuszu danych (2)" wyfiltrowujesz tylko dane z...
Ad 1. Tu należy zwrócić uwagę, że każdy arkusz ma w VBA dwie nazwy, tzw. nazwę "zakładkową" - widoczną na zakładce arkusza i nazwę kodową - dostępną tylko w VBA. Te nazwy są początkowo identyczne, ale użytkownik może je zmieniać niezależnie, więc mogą później się różnić. Jeśli piszemy odwołanie: Jaka jest różnica pomiędzy: ActiveCell.FormulaR1C1 / ActiveCell.Formula...
Przy okacji trochę mi sie koncepcja zmieniła - gdybym musiał wykluczyć więcej niż jeden arkusz - to dałoby się? Można wykluczać arkusze, można też uwzględnić tylko te z listy... Wykluczanie generalnie można zrobić tak: - wykluczasz Arkusz1, Arkusz2 i Arkusz3, drukujesz pozostałe[syntax=vbscript]If ws.Name <> Arkusz1.Name And ws.Name <>...
wyskakuje jeszcze błąd z tą samą nazwą arkusza W Skoroszyt zawierający makra zostawić tylko jeden arkusz i dać mu jakiś unikatową nazwę(ale Excel, sam zmienia nazwę (dodaje (2)), a następnie zmiany nazwy na nazwę skoroszytu) Chcesz wybrać pliki indywidualnie? Wtedy [syntax=vb] Sub zbior() Dim wb As Workbook Do fl = Application.GetOpenFilename("ExcelFiles....
Zamiast przerabiać było napisać nowe makro, bo np. po co ci pętle. Najpierw musisz "pobrać" nazwę arkusza z A1 potem nr wiersza z B1 A potem wprowadzić dane w arkusz o nazwie zapisanej w zmiennej "nazwa" w wierszu zapisanym w zmiennej "wiersz". C1 w kolumnie 2 a D1 w kolumnie 3 Private Sub CommandButton1_Click() nazwa = Worksheets("Arkusz1")....
otwiera się Arkusz 2 zaznaczając pustą komórkę kolumny B (ewentualnie dodaje nowy pusty wiersz) Patrząc na załączony plik nie mogę zrozumieć w jakim celu chcesz zrobić to makro :?: :cry: Jeśli chcesz szybko weryfikować odniesienia do arkusza 2 to najprościej proponuję makro w arkuszu 1 :spoko: : [syntax=vbscript]Private Sub Worksheet_BeforeDoubleClick(ByVal...
No tak. Miałeś ActiveSheet. [syntax=vbscript]Sub Drukuj_jezeli() Dim Arkusz As Worksheet For Each Arkusz In Sheets With Arkusz If .Name <> "Dane z zam" And .Name <> "Arkusz1" Then If Application.WorksheetFunction.CountIf(.R... ">0") > 0 Then .PrintOut .ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ "D:\test\pdf\" + .Range("f7")...
Możesz zobaczyć to z inputboxem: [syntax=vb]Sub Przycisk2_Kliknięcie() Dim plik As Variant Dim openFile As Workbook Dim Nazwa_Pliku As String Nazwa_Pliku = ActiveWorkbook.Name MsgBox Nazwa_Pliku plik = Application.GetOpenFilename( _ FileFilter:=",*.xl*", _ Title:=" Wczytaj plik z danymi") If plik = False Then Exit Sub Set openFile = Workbooks.Open(Filename:=plik)...
Pewnie makro masz w kodzie arkusza. Musi być w module... Jeśli to procedura zdarzeniowa, wywołaj je po nazwie (Call NazwaMakraInModule)
Proponuję poniższy kod dla zdarzenia WorkbookOpen. Kod sprawdza czy ostatni arkusz w skoroszycie ma nazwę równą dzisiejszej dacie, jeśli nie to tworzy na końcu skoroszytu nowy arkusz z nazwą taka jak dzisiejsza data. [syntax=vb]Private Sub Workbook_Open() Dim sShNm$ sShNm = ActiveWorkbook.Sheets(Sheets.Count).Name If sShNm <> CStr(Date) Then Sheets.Add...
Przetestuj makro z załączonego pliku. Arkusze 1 - 4 to arkusze z danymi źródłowymi Arkusz5 - arkusz na wiersze wytłuszczone
ActiveWindow to arkusz "Menu", bo w nim klikasz przyciski... Zobacz makro "Druknij" Zaznaczanie wszystkich: Łącze komórki to N6 w arkuszu "Admin". Podepnij makro pod pole wyboru "zaznacz wszystkie"[syntax=vb]With sheets("Admin") If .Range("N6") = True Then .Range("N1:N5") = True Else .Range("N1:N5") = False End If End With[/syntax]W zależności od wartości...
Zrobiłem coś w tym temacie... Wygląda, że działa poprawnie, jednak trzeba mieć świadomość, że przy dużej ilości danych efektywność procedury nie będzie wysoka. Po odpaleniu spokojnie będziesz mógł iść na kawę :D W skoroszycie dodałem dodatkowy (pomocniczy) arkusz "work", który jest ukryty. andie
Koledzy dobrze radzą, ale to trzeba wdrażać od początku projektu. Więc na przyszłość trzeba to zaplanować inaczej. Tymczasem jednak potrzebne jest rozwiązanie doraźne, polegające na kopiowaniu tego co jest. Na razie to jest ilość danych, z którą Excel sobie poradzi, ale jak danych będzie przybywać, to kopiowanie będzie trwało coraz dłużej. Ponieważ...
Musisz jakoś wskazać z którego arkusza chcesz usunąć dane. Excel (makro) to nie jasnowidz. Albo ustawisz stałą nazwę abo jak radził kolega walek wykorzystasz indeks arkusza (lub jego nazwę w VBA) Czyli zastąp Sheets("1").Select Sheets(2).Select (ale wtedy arkusz z którego usuwamy musi być drugi w kolejności) lub Arkusz2.Select (Arkusz2 to nazwa obiektu...
ż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...
No to pewnie arkusz "XXX" & Cells(Y, "B") nie istnieje. Stojąc mniej więcej tam napisz w oknie poleceń (Immediate, jak nie mam to sobie włącz: View, Immediate Window) coś takiego: ? "XXX" & Cells(Y, "B") Napisałem, że muszą być przygotowane wszystkie potrzebne arkusze z nagłówkami, makro ich nie tworzy.
Czyli algorytm mniej więcej taki: 1. Wyszukujesz ostatni arkusz i zapamiętujesz jego nazwę w zmiennej tekstowej, np Src. Metoda wyszukania dowolna, arkuszy jest zwykle nie tak dużo, można przejrzeć w pętli wszystkie. 2. Tworzysz w zmiennej np Dst nazwę nowego arkusza i tworzysz arkusz z taką nazwą: Sheets.Add.Name = Dst 3. Kopiujesz dane z jednego arkusza...
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...
[syntax=vbscript]Sub Dzialaj() Application.ScreenUpdating = False Dim Tekst As String Sciezka = "C:\PlikiExcela\" Tekst = "mój tekst" Plik = Dir(Sciezka & "\*.xls*") While Plik <> "" Call Wyszukaj(Sciezka & Plik, Tekst) Plik = Dir() Wend Set fso = CreateObject("Scripting.FileSystemObject... Set s = fso.GetFolder(Sciezka) For Each p In s.SubFolders...
Użyj pętli For, wyłączając arkusz docelowy w instrukcji warunkowej. [url=http://www.elektroda.pl/rtvforum/to...
A czy jest możliwość stworzenia makra, które po kliknięciu przycisku stworzy automatycznie arkusze dla wszystkich osób (i nada nazwy takie jak w pierwszej kolumnie tabeli tj. nazwisko i imię), a jeśli arkusz dla danych osób już istnieje, to je pominie. Można np tak: 968207
A jak zmienić kod aby do zmiany wartości była uwzględniana tylko kolumna C, ale skrypt był wyzwalany po zmianie w kolumnach B, C, D. Do tych kolumn wklejam jednocześnie dane, po wklejeniu danych do trzech kolumn skrypt nie działa. Wstępna ocena dostępnych informacji Witam ponownie, Zrozumiałem, że chce Pan zmodyfikować skrypt w Google Apps Script tak,...
Mi jednak chodzi o to by makro się samo uruchamiało. Tu masz makro, które monitoruje określony zakres pod kątem zmiany. Dodaj do tego kod swojego makra sortującego. [syntax=vbscript]Private Sub Worksheet_Change(ByVal Target As Range) Dim KeyCells As Range ' The variable KeyCells contains the cells that will ' cause an alert when they are changed. Set...
Do powielania arkuszy i adaptacji formuł możesz wykorzystać makro z załączonego pliku :D - zaczyna pracę dopiero od arkusza 2.2 :!: i działa w ten sposób, że po wybraniu 1 arkusza w skoroszycie (tj. o najwyższej numeracji w nazwie :D ) - poprzez dwuklik myszką w ten arkusz - automatycznie kopiuje arkusz i ustawia nową nazwę i podmienia formuły :spoko:...
Był błąd - chyba go poprawiłem. Zmieniłem trochę całość - eksportowałem jako moduł bas - dołącz do swojego projektu i użyj. Również zamieszczam arkusz testowy z importowanym modułem. Użycie jest proste - zaznaczasz zakres komórek, na którym chcesz przeprowadzić zmiany i w menu Narzędzia -> Makro -> Makra uruchamiasz jedyne makro, jakie jest - zrób_gwiazdki....
Wysłałem Ci gotowca na 99%. niestety próby przerabiania i sklejania czegokolwiek ze znalezionych makr spaliły na panewce Weź się trochę wysil... Masz do duspozycji arkusz 'Parametry'.
Na pętlach wyszło mi coś takiego (załącznik). Ale gdyby trochę to przeorganizować + arkusz pomocniczy, niepotrzebne byłyby makra...
Jeżeli tak to proponuje nagrać makro i podpiąć je pod przycisk (będzie najprościej). Włącz na wstążce zakładkę deweloper Plik-opcje-Dostosowanie wstążki-i w oknie po prawej stronie zaznaczyć Deweloper i OK Na wstążce pojawi się karta deweloper.Otwórz ją. Przejdź na twój pierwszy arkusz. Wciśnij "Zarejestruj makro" Teraz postępuj tak jak zawsze robisz...
Nie ma uniwersalnego rozwiązania w takim przypadku. Można oczywiście zapisać plik z makrem jako dodatek i aktywować go w oknie "dodatki", ALE: jeśli ktoś zmieni nazwy, kolejność indeksów arkuszy (jeśli nie nazwy) to kicha. Spróbuj może w ten sposób: 1. Dostajesz plik z logami (gdzieś trzeba by go zapisać). Tutaj arkusz z danymi musi być rozpoznawalny....
Jeżeli umiesz wpisywać dane z formularza, co zakładam, skoro gdy makro będzie tworzyć arkusz to przydzieli mu nazwe z formularza(to potrafie akurat zrobić ) to problemem może będzie znalezienie ostatniego wiersza. Opcja bardzo prosta Dim PierwszyPusty As Long PierwszyPusty = Range("A1").End(xlDown).Row + 1 Pod PierwszyPusty masz indeks pierwszego pustego...
Rozumiem, że arkusz z danymi do kopiowania jest w osobnym pliku.
Długo nikt nie odpowiada, więc chyba coś tu nie jest jasne. Excel może działać (upraszczając nieco) poprzez formuły lub poprzez makra. Formuły nie mogą niczego przenosić, mogą jedynie "kopiować", a ściślej zwracać wynik tam, gdzie wcześniej wpisano formułę, pozostawiając dane źródłowe bez zmiany. Formuły działają automatycznie, przeliczają się same,...
Lista niedozwolonych znaków dla nazwy pliku w Windowsie jest krótsza, w dodatku domyślnie nie można niektórych z nich wstawić jako nazwy arkusza, więc finalnie można ją skrócić jeszcze bardziej. Możesz sobie sprawdzić listę i wstawić własne znaki. Pełen przykład poniżej: [syntax=vbscript]Private Sub CommandButton1_Click() ' sendAll Makro ' Makro zarejestrowane...
Na pierwszym arkuszu umieszczamy listę Combo. Żeby wyświetlić listę arkuszy można to zrobić w makro, które ładuje listę Combo przy otwarciu skoroszytu, w obsłudze zdarzenia Workbook_Open: [syntax=vb] Option Explicit Private Sub Workbook_Open() Dim iWiersz As Integer Dim ws As Worksheet iWiersz = 1 'Utwórz listę arkuszy w pierwszym arkuszu od drugiego...
Po kliknięciu komórki np. C16 ma się utworzyć arkusz o tej nazwie tj. "C16"? Czy raczej arkusz z nazwą projektu? Jeżeli to drugie, to zamiast używać tabeli przestawnej proponuje: 1. utworzyć arkusz z polem/formantem kombi dla którego źródłem danych będzie pole (kolumna) "nazwa" z arkusza Dane. Po wybraniu elementu z listy zwraca się pozycję tego elementu...
Makro to się samo uruchamia, jeśli podłączysz je pod swój arkusz pod zdarzenie change - wtedy jest z automatu wykonywane gdy cokolwiek się w arkuszu zmieni. Moje makro używa tego samego mechanizmu, w załączniku masz gotowy przykład już z osadzonym makrem. W makro Kolegi PRL musisz zrobić więcej poprawek, żeby działało pod Ciebie - będzie ono jedynie...
Cel jest prosty, chcę aby w każdej komórce w kolumne, wstawiało mi makro formułe do momentu kiedy np w kolumnie A będzie cokolwiek wpisane. W programowaniu nie ma 'na przykład. Dlatego pokaż arkusz wejściowy i arkusz po wykonaniu makra.:)
:arrow: adamas_nt Jak analizuje twoje kody to widzę że bardzo daleko mi jeszcze do pisania makr. Dzięki twojej wiedzy można było skrócić czas obliczeń (przynajmniej za pierwszym razem o parę sekund :) a nie milisekund,a drugie rozwiązanie też jest ciekawe) Adamas_nt 'owi należy się wielokrotne pomógł- a może nawet więcej] Ja już tylko skromnie dołożyłem...
[quote="Andrzej59"]Zrobione w PQ[/quote Po dopisaniu do listy jednej lub dowolnej liczby pozycji trzeba arkusz zapisać i odświeżyć a tabele same się uaktualnią
Czy takie makro da się zrobić? Tak :D , ale chyba lepiej dwa oddzielne :spoko: Po drobnych zmianach w pliku tygodnie.xlsm 901448 umieszczony w Module1 kod sprawdza "stan arkuszy" i ewentualnie przygotowuje arkusz na nowy tydzień :!: Zmodyfikowano również plik suma pól.xlsm 901451 i wyposażono w makro do kopiowania potrzebnych Ci wartości z aktualnego...
Bardzo proszę o pomoc w napisaniu makra, które będzie kopiowało dane z wybranych komórek arkusza „Zadania” do wybranych komórek arkusza „Plan zadań”, tzn.: Z arkusza „Zadania” z komórki: z komórki "Temat" do komórki "Zadania" ze "Data rozpoczęcia" do "Data od" z 'Data ukończenia" do "Data do" z 'Data wykonania" do...
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...
arkusz makro makro otwierające arkusz makro otwiera arkusz
silvercrest odkurzacz drążek laguna komora wygrzewać
lampki ws2812 prostownik ideal
Jak sprawdzić tranzystor BD136 multimetrem? Peugeot 508 2016 Allure lift – brak napięcia na kostce CD po naprawie head-unitu SMEG+