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]
Niezadeklarowana zmienna obiektowa 'WB' Zadeklaruj (WB as workbook) i przypisz (set WB = thisWorkbook / set WB = Workbooks("JakiśInnyPlik.xlsx") Albo po prostu: For Each WS In thisWorkbook.Worksheets lub dla innego niż ThisWorkbook For Each WS In Workbooks("JakiśInnyPlik.xlsx").Workshee... Masz błąd w konstrukcji 'If': i = i -1 musi być wewnątrz bloku...
Może tak: Sub del() Dim i As Integer For i = 100 To 3 Step -1 'ile wierszy będzie sprawdzanych If Range("B" & i).Value = Range("B2") Then Rows(i).Delete End If Next i End Sub
Jeśli będziesz miała otwarte oba pliki (tylko :!: ) to w świeżym pliku możesz wykorzystać makro typu :spoko: : [syntax=vbscript]Option Explicit Sub duplikatclear() Dim ws As Worksheet Dim ww As Worksheet Dim i, lrs, lrw As Integer Dim db As Range Set ws = ThisWorkbook.Sheets(1) Set ww = Workbooks(2).Sheets(1) lrs = ws.Cells(Rows.Count, 6).End(xlUp).Row...
Spróbuj tak: [code][syntax=vbscript] Sub ZapiszIUsuń() Dim Plik As String Plik = ThisWorkbook.FullName ThisWorkbook.SaveAs Filename:="C:\NowaŚcieżkaDoPliku\" & ThisWorkbook.Name Kill Plik End Sub [/syntax] W cudzysłowie trzeba podać ścieżkę docelową andie
Gdy inna komórka nie zawiera tych słów makro się wysypuje Ok, z instrukcją 'if' [syntax=vbscript]Sub elka() For i = Cells(Rows.Count, "I").End(xlUp).Row To 1 Step -1 b = InStr(Cells(i, 9), "Nr faktury:") + 12 c = InStr(Cells(i, 9), ", Kwota VAT:") - b If b > 12 And c > 0 Then Cells(i, 9) = Mid(Cells(i, 9), b, c) Next i End Sub[/syntax]
Zauważ, że arkusz niue nazywa się "mm.dd.yyyy" tylko ma konkretną datę jako nazwę więc lepiej w ten sposób: select.end ale tak też można. I druga rzecz. Ta funkcja też ma pewien błąd. Trzeba podać datę początku i datę końca. Nie wiem co chciałeś osiągnąć chyba że jakimś kodem którego akurat ja nie stosuje/nie znam. [syntax=vb] Range("H2").FormulaR1C1...
Brak pliku do testowania!!! Jak coś Ci nie zadziała, poprawisz sobie sam. Dodałem makro RemoveShapes. Zobacz w moim załączniku.
A nie możesz wyniki przenieść na drugi arkusz? Wtedy tylko zmieniasz formułę: =LEWY(Arkusz1!A1;2) =PRAWY(Arkusz1!A1;DŁ(Arkusz1!A1&... Czy musisz na tym samym arkuszu kategorycznie pozostać? EDIT: Zrobiłem specjalnie dla Ciebie makro ;) [syntax=vb]Sub Prostokąt1_Kliknięcie() koniec = Range("A1").End(xlDown).Row Application.ScreenUpdating...
Ale makro działa , a co to ten 'CommandBoxa'?
Przeczytales to co napisalem? Czy calkowicie zignorowales i nadal piszesz to samo? Co to sa okienka "popins"? Popup? Przeciez pisales, ze wlaczaja sie aplikacje. > Masz klawiature gameingowa i masz ustawione jakies makro pod 2? Jezeli tak to przywroc klawiature do ustawien domyslnych lub zmien to w aplikacji do klawiatury. Mozesz usunac to co wykryl...
Mała przeróbka makr: 912681 Wiersze można dodawać ze ściśle określonego zakresu, który sam sobie ustalasz ("If ilewrs > 10 Then Exit Sub"). Usuwanie wierszy tylko pojedynczo, od ostatniego, aby zachować porządek.
Zmienić możesz: [syntax=c]#define __DATE__ "hello"[/syntax] to makro jest datą kompilacji modułu, więc trzeba uważać, bo jak ono wystąpi w osobnych plikach to może się okazać że może mieć różną wartość dla każdego z nich. Lepiej jest utworzyć np. plik "parametry.h", który byłby generowany np. przez skrypt lub wstawić w odpowiednim miejscu w Makefile...
co zmienia na ekranie co 10s między Sheet 1 a Sheet 2 To zamiast migających światełek na choince? Jak już wspomniałem to będzie wyświetlane na dashboard. Na TV. Zamiast otwierać 2 pliki lub instalować 2 PC + 2TV wystarczy jeden, który się zmienia.
Przy odświeżaniu pliku potrzebuję aby wykres ten został usunięty. W jego miejsce makro tworzy nowy w oparciu o aktualne dane. Jeśli wykres jest tego samego typu i nie zmienia się układ danych, tylko dochodzą nowe, to po co usuwać wykres ? Wystarczy "rozszerzyć" zakres danych dla wykresu już istniejącego ... ? : / ?
Namotałeś. [syntax=vbscript]Sub CzyscDane2() d = Weekday(Date) If d = vbSaturday Or d = vbSunday Or Swieto(Date) Then MsgBox ("Mamy weekend! Dane usuną się tylko w dzień roboczy") Exit Sub End If i = MsgBox("Czy na pewno chcesz usunąć dane z tej tabeli? " & _ "Pamiętaj, że stracisz je bezpowrotnie!!!" _ , vbOKCancel + vbExclamation + vbDefaultButton2,...
To jeszcze wymaga doprecyzowania. Co jeżeli w kolumnie F jest pusto a w E coś jest, albo odwrotnie? Może chodzi ci o usuwanie całych wierszy? Niezależnie od odpowiedzi użyj metody Delete. W pierwszym przypadku z obiektu Range z odpowiednią do potrzeb wartością Shift, w drugim Rows. Obiekt powinien wskazywać właściwy element do usunięcia. Zalecane jest...
a po drugie chyba mniej skomplikowane będzie usuwanie tych z zakresu drugiej ramki No, może odrobinkę. W załączniku są dopisane oba. Procedury znajdują się w kodzie arkusza. W makro wstawiania nie ingerowałem, nadmiarowe CheckBox'y wyrzuciłem.
podczas wyboru pliku kliknę na przycisk "Anuluj" :cunning: Temu kto kliknie "Anuluj" trzeba ustanowić karę : wklejania ręcznego poszczególnych wartości do tabeli :please: A na poważnie to można wprowadzić kod obsługi błędu i przerywający makro np: [syntax=vbscript]Public Sub ImpCsv() Dim Monthly As String Dim aConn As Object On Error GoTo ErrMsg If...
Pomimo dość dziwacznego kodu, jak przystało na laika ;) makro działa... Linia[syntax=vb]Range(Selection, Selection.End(xlToRight)).Select[/syntax... zaznaczenie komórek wiersza do pierwszej "dziury" (Ctrl+Shift+strzałka w prawo) i stąd pozostające wartości. Proponuję małą przeróbkę (koniecznie przeanalizuj!) [syntax=vb]Private Sub cmbdeletpass_Click()...
[syntax=vb]Sub usunAE() Dim bs As Range, r&, i& Set bs = Range("A:E") r = bs(Rows.Count, 5).End(xlUp).Row For i = r To 1 Step -1 If bs(i, 5) = 0 Then bs.Rows(i).Delete Next End Sub [/syntax]
Faktycznie, to usuwanie danych na początku chwilę trwa... U mnie jakieś 30s. Ale dalej mi się nie podobają te funkcje na 600.000 wierszy: popraw je na: [syntax=vb]ost_allegat_list = Sheets("Part of Allegat List").Cells(Rows.Count, 1).End(xlUp).Row With Range("H4:H" & ost_area_A) .FormulaR1C1 = "= IFERROR(VLOOKUP(RC[-7],'Part of Allegat List'!R2C9:R"...
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...
Teoretycznie można coś podobnego zrobić - choć w praktyce jest to bardzo złe rozwiązanie, a już zwłaszcza na plikach w pracy, gdzie istotne jest bezpieczeństwo i pewność danych... Może najpierw wykład, potem kod ;) Garść faktów: Excel nie nadaje się do pracy wielozadaniowej (czy równoległej, zwał jak zwał). Teoretycznie można w pliku włączyć jakiś tam...
[syntax=vb]Application.ScreenUpdating = False For Each ws In ThisWorkbook.Worksheets If ws.Name <> "Arkusz1" And ws.Name <> "Arkusz2" Then ws.Range("A5:C71").ClearContents End If Next ws Application.ScreenUpdating = True[/syntax]
Jeśli długo nie używaleś nagrywarki i tak rzadko czyścisz komputer to najprawdopodobniej masz bardzo zabrudzony napęd.. Potrzebujesz : Patyczek kosmetyczny - 2 sztuki spirytus pitny (rektyfkowany) lub alkohol izopropylowy Pod żadnym pozorem nie używaj spirytusu salicylowego czy niebieskiego denaturatu. Ewentualnie może być denaturat bezbarwny. Potrzebny...
Witaj [syntax=vb]Sub usuwanie_pustych_wierszy() For Each sh In ThisWorkbook.Sheets For i = sh.Cells(65536, "A").End(xlUp).Row To 2 Step -1 If sh.Cells(i, "B").Value = "" Then sh.Rows(i).Delete shift:=xlUp End If Next Next End Sub[/syntax]
https://obrazki.elektroda.pl/7268233500_... Ten artykuł powstał w odpowiedzi na propozycję kolegi (at)Techekspert i jest rozwinięciem mojej prezentacji przedstawionej na konferencji The H(at)ck Summit w dniu 20 października 2023 r. Samą prezentację możesz pobrać stąd: Wyrzucamy algorytm Gutmanna do kosza Podstawowe informacje o niszczeniu...
Dołącz przykladowy plik
Na przykład w ten sposób: [syntax=vb]nr = "FK002301" ret = "" cut_flag = True For i = 1 To Len(nr) c = Mid(nr, i, 1) If Not IsNumeric(c) Then ret = ret & c Else If c > 0 Then cut_flag = False ret = ret & c End If If c = 0 And Not cut_flag Then ret = ret & c End If End If Next i MsgBox ret[/syntax]
hej, makro, którego używam: działa poprawnie, ale tylko dla arkusza danego. Chodzi mi o makro, które będzie usuwać wszystkie wiersze w całym skoroszycie. makro umieść w module a nie w arkuszu
Witam, Mam problem który może mi rozwiązać tylko makro, otrzymałem excel z danymi w którym mam w jednej kolumnie nazwy odbiorców w kolejnych dane sprzedażowe. Problem polega na tym że zawsze pierwszy wiersz dla danego odbiorcy jest sumą wszystkich pozostałych (taki wiersz sumujący sprzedaż dla danego klienta). Potrzebuje makro które automatycznie usunie...
W przykładowym pliku nie widzę średników. Nie widzę też makra, które miałoby źle zapisywać. Generalna zasada jest taka, że jeśli plik zawiera separator w polu danych lub jakiś inny znak niedozwolony, to zawartość komórki ujmuje się w cudzysłów. Mechanizm Excela robi to prawidłowo, więc dlaczego makro nie miałoby?
Spróbuj: [syntax=vbnet]Sub d() Application.ScreenUpdating = False For Each s In ThisWorkbook.Sheets s.Cells.FormatConditions.Delete Next s Application.ScreenUpdating = True End Sub[/syntax]
Nagraj makro jak to robisz, następnie je dostosuj do swoich potrzeb.
Jesli dane jest w kolumnie 1, wtedy [syntax=vb]For r = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 If (r Mod 3) <> 0 Then Rows(r).Delete Next [/syntax]
Witam, Jestem początkującym w VBA. Potrzebuje pomocy w jednym temacie: Chciałbym uzyskac takie makro że jak zaznacze np zakres komórek A6:B11 to chciałbym tylko w tych miejscach zwiekszyc liczbe wierszy i za pomoca wpisania konkretnej liczby wierszy (InputBox). Ważne dla mnie by dodanie wiersza synchronizowane było z okienkiem w kolumnie B tzn: zeby...
No, ale skądś się ta lista w kol.A wzięła. Jeśli jest wynikiem działania makra, być może łatwiej/szybciej byłoby to makro zmodyfikować (uzupełnić w podprocedury)...
Powinno być ScreenUpdating, a nie DisplayAlerts. Poza tym niepotrzebne są te selekcje. Wystarczy: [syntax=text]Rows(281).Delete Shift:=xlUp 'usuwa 281 wiersz [/syntax]
[syntax=vb]Sub zz() Dim iLstCl% Application.ScreenUpdating = False iLstCl = Cells(4, Columns.Count).End(xlToLeft).Column For i = iLstCl To 3 Step -1 If Cells(4, i).Value = 1 Or Cells(4, i).Value = 2 Then 'zamiast powyższego warunku przy takim nazewnictwie kolumn można dać poniższy warunek: 'If IsNumeric(Cells(4, i).Value) = True Then Columns(i).EntireColumn.Delete...
[syntax=vbscript]Sub Kasuj() Dim k As Variant For Each k In Sheets("Arkusz1").Range("TerminyGORNIK") If k <= Date Then Sheets("Arkusz1").Cells(k.Row, k.Column) = "" Next End Sub[/syntax]
Chyba jakoś tak: Private Sub CommandButton1_Click() x = 3 While Worksheets("Przyrządy pomiarowe").Cells(x, 1).Value <> "" If Worksheets("Przyrządy pomiarowe").Cells(x, 1).Value = Worksheets("Kalibracja-Naprawy&... Then Worksheets("Przyrządy...
[syntax=vbscript]Sub KolumnaData() Application.ScreenUpdating = False d = [A1] mz = Columns("MZ").Column For x = mz To 2 Step -1 a = Cells(2, x) If a <> "" And a < d Then Columns(x).Delete Next Application.ScreenUpdating = True End Sub [/syntax]
Załączam przykładowy dokument z którym się borykam. Potrzebuję taki dokument "czyścić" z niepotrzebnych fragmentów. Na przykład taki ciąg znaków "1H NMR" występuje tutaj (dla przykładu) dwa razy. Potrzebuję odnaleźć wszystkie wystąpienia takiego ciągu, oraz usunięcie wszystkiego wraz z nimi końca akapitów. Wyrzeźbiłem coś, co potrafi wykonać zadanie...
W każdy przebiegu pętli zanim zaczniesz zaznaczać wiersze. Inaczej skąd program ma wiedzieć, że chcesz zaznaczać w innym arkuszu?
Witam Próbuje stworzyć makro dla "zapominalskich". Przejdźmy do sedna. Po wciśnięciu OK w msgboxie makro odlicza np. 30 sekund po czym usuwa otwarty plik. Ale jeśli wcześniej włączę makro usuwające plik to plik zostanie natychmiast usunięty. Czyli makro odliczające czas musiałoby zostać wyłączone by kolejne mogło zostać włączone. Udało mi się na znalezionych...
A więc z 1588 styli zrobiło się tylko 1300. Za sprawą tak napisanego makra: [syntax=vbscript] Sub UsunStyleXl() ' ' UsunStyleXl Makro Dim oStyle As Style, nazwaStylu As String For Each oStyle In ActiveDocument.Styles If Not oStyle.BuiltIn Then nazwaStylu = oStyle.NameLocal nazwaStylu = Left(nazwaStylu, 2) If nazwaStylu = "xl" Then oStyle.Delete End...
Na chwilę obecną mam VBA, które działa w następujący sposób: Jeśli w kolumnie "6" w arkuszu1 zaznaczę "x" to kopiuje odpowiednie komórki do pierwszego wolnego wiersza w innym arkuszu. Aby odwrócić działanie tego makra, dobrze byłoby wiedzieć gdzie te "odpowiednie komórki" lądują w 2-gim arkuszu. No wiesz, żeby nie biegać i szukać po wszystkich szufladach......
Podmień kod makra na poniższy i potestuj [syntax=vbscript] Sub nastepny() Application.ScreenUpdating = False ActiveSheet.Copy after:=ActiveSheet With ActiveSheet num = Mid(.Name, 3, 2) .Range("g4") = "z T-" & num num = Format(Val(num + 1), "00") .Name = "T-" & num ow = .Cells(Rows.Count, 1).End(xlUp).Row .Range("l2") = .Range("l2").Value + 7...
Poprawiłem makro o usuwanie wszystkich obiektów rysunkowych i o wklejanie komórek z ich formatem. Kod programu wpisany jest w ThisWorkbook w VBAProject.
Do makra można przypisać skrót klawiaturowy, ale nie może to być ani "'" ani F9 tylko konstrukcja typu Ctrl+Shift+A Można też uruchamiać makro za pomocą przycisku lub przypisać je do kliknięcia w obraz lub kształt.
Witaj Łatwiej zrobić nowy niż szukać błędów: Dodano po 3 Specjalnie w tym przykładzie może być łatwiej [syntax=vb] Sub Usun() Dim r&: r = 2 While Cells(r, 1) <> Empty If Cells(r, 1) = "X" Then Cells(r, 1).Delete Shift:=xlToLeft End If If Cells(r, 2) = "Linia" And Val(Left(Cells(r, 3), 3)) >= 1 Then r = r + 1 Else Rows(r).EntireRow.Delete...
Cześć, Zrobiłem makro, które ma usuwać wiersze, jeśli w komórce F występuje fragment tekstu, np 'AAA' lub 'BBB'. Makro działa, ale jeśli dwie komórki w wierszach pod rząd są takie same to makro je omija. Zastosowałem funkcję 'offset', ale to nie pomogło. Ma ktoś jakiś pomysł jak to naprawić? Sub usuwanie_wierszy() Range("A1").Activate wiersz = 2 Do...
A więc nowy temat.
Witam, Napotkałem dzisiaj dzwiny błąd i nie mam pojęcia jak go wyeliminować. W moim arkuszu mam 3 pzyciski do których podpiete są makra. Dzisiaj potrzebowałem zobić makro które duplikuje mi aktywny arkusz w tym samym skoroszycie i zmienia jego nazwe. Napisane makro w pełni mnie zadowala i spełnia oczekiwania, ale jest jeden problem gdy uruchamiam makro...
Ale jakich makr nie umiesz stworzyć? Ja tego nie zrozumiałem. To po kolei: 1. Do arkusza "Firma 1" wklejam dane z innego pliku od kolumny E do AB - mniej ważne gdzie to wklejasz, ważniejsze co dokładnie. Czy umiesz określić zakres do kopiowania? np. A5:Z123, albo kolumny A do Z od wiersza 5 do ostatniej wartości w kolumnie C (nie może być w tej kolumnie...
Udało się skleić/napisac 2 makra, które robią robotę. Makro (1 i 2) zadziała o ile mamy poprawnie użyte style w dokumencie. (w opcjach stylów włączyć pokaż wszystkie style) Jeżeli nie to: -zmienić styl odnośnika do przypisu dolnego (w tekście) na styl "Odwołanie przypisu dolnego" np. jeżeli odnośnik ma styl "Normalny" używamy: https://obrazki.elektroda.pl/9955118700_...
To zależy jak często będzie to wykorzystywane. Jeżeli tylko raz to lepsze są funkcje Excela, bo z reguły szybciej się wykona zadanie. Jeżeli jednak będzie to powtarzane co jakiś czas to lepsze będzie makro VBA, bo masz pełną kontrolę nad tym co się wykonuje, a czas tworzenie nie jest powalający, jeżeli potrafisz trochę pisać w VBA.
Spróbuj [syntax=vb]Sub Usundane() ' ' Usundane Makro ' Makro zarejestrowane 2012-05-22, autor XYZ ' If MsgBox("Czy na pewno chcesz usunąć dane osobowe z tej tabeli? Pamiętaj, że stracisz je bezpowrotnie!!!", vbOKCancel + vbCritical + vbDefaultButton2, "UWAGA! Usuwanie danych") = vbOK Then Range("C11:AC50").ClearContents End If End Sub[/syntax]
Próbowałem w ten sposób to obejść, ale zawsze mam DEBUG na drugiej linii makra. Chyba, że zmienię błąd w komórkach na dowolne litery, cyfry itp. Wówczas makro działa jak powinno.
Spróbuj zamienić Rows(i).Hidden = True na Rows(i).Delete = True I przetestuj na kopii dokumentu... Powinno być: Rows(i).Delete Przy czym po usunięciu wiersza indeks 'i' nie powinien być zmieniany
Witam Tabela z uprawami - po wprowadzeniu działek do arkusza (kolumna C i D) okazuje się ze na niektórych polach jest więcej niż jedna uprawa. Wtedy wstawiam wiersz poniżej danej działki i wpisuję kolejne uprawy na danej działce (tylko kolumna E, G, F, natomiast C i D zostają puste w tym wypadku). Podobnie z usuwaniem zbędnych wierszy w danej działce....
Witam, Jak widać po problemie jestem początkujący w programowaniu VBA. Dlatego chciałem prosić o małą pomoc. Potrzebuje napisać makro w którym jedną z czynności będzie sprawdzenie czy wartości w kolumnie C (od C2) są równe wartościom w kolumnie D (od D2). Jeżeli tak się dzieje wówczas makro powinno usuwać cały wiersz. Jednym słowem jeśli C1 = D1 then...
Potrzebuję stworzyć makro przesyłające dalej wiadomość, ale po uprzedniej edycji jej treści, tj. usuwanie określonych fragmentów tekstu wiadomości, pobieranie adresu odbiorcy z określonego miejsca z treści, zmiana tematu wiadomości na tekst z treści. Szukam rozwiązań już od dłuższego czau, ale w sieci pomysłów brak :(. Treść e-maila w załączeniu, na...
Zaznacz sobie ten swój zakres czyszczonych komórek: Range("G7:AA15") Range("G17:AA22") Range("G26:AA29") Range("G32:AA37") Range("B40:I47") i nadaj mu nazwę "intro" :cunning: - wówczas proponowane makro wyczyści Ci tylko ten pożądany zakres. :bye:
Notepad++ Makra > Rozpocznij nagrywanie > (tu wykonujesz sekwencje operacji na jednej linii z przejściem do następnej) > Zakończ nagrywanie Makra > Uruchom Makro wielokrotnie Zaznaczasz "Wykonaj do końca pliku" i klikasz "Uruchom"
Super! Makro działa tak jak sobie założyłem, okazuje się jednak że mam problem z analizą tak zebranych danych. Ładuje do 100 plików na raz każdy ma nawet kilkaset linijek i analiza jest utrudniona przez to że każdy jest w osobnym arkuszu, wcześniej tego nie przewidziałem... Co trzeba by przerobić żeby pliki txt ładowało wszystkie do jednego arkusza...
Mam dodaną ta formułę we wszyskich wierszach kolumny B ?? Wiesz co to jest przeciagnac formule? Dodano po 1 nagraj makro dla tej formuly i dostosuj zamiast tego 'Value + 2"
Witam! To mój pierwszy post w tej części forum. Natrafiłem na problem, znalazłem rozwiązanie, może komuś to się przyda. Zarejestrowałem proste makro, które w pierwszej części (tylko ta jest istotna) miało u dołu tabeli, ale przed wierszem podsumowania tworzyć dodatkowy wiersz będący kopią jednego z wierszy powyżej. Wydawało się, że sprawa jest prosta,...
Prosiłem o plik Excela, a nie o obrazek. Pytałem, jak to ma działać? Czy to makro ma reagować każdorazowo jak zmieni się kolor (rozumiem, że sprawdzana ma być kolumna C), czy ma być wywoływane okresowo (np. przyciskiem) i ma sprawdzać całą kolumnę pod kątem pokolorowanych duplikatów? Czy może wystąpić taka sytuacja, że jakiś wpis ma już kolor i ten...
Jeżeli chodzi o kopiowanie kolorów, to najpierw na początku porządnie wyczyść arkusz celu z kolorów: [syntax=vb]wscel.Range("A2:E65536").Clea... wscel.Range("C2:E65536").Interior.ColorI... = xlNone[/syntax] Sam kolor jest zaszyty w zmiennej Range(...).Interior.ColorIndex, zatem kopiuj go razem z danymi w ten sposób: [syntax=vb]wscel.Range("C"...
W załączniku plik z przyciskiem wstawiania nowego wiersza. Natomiast gdybyś usuwał wiele wierszy z zaznaczenia pamiętaj, że pola wyboru z tych wierszy ułożą się w stosik jeden na drugim. I dlatego, podejrzewam, tyle ich się nazbierało. Można dorobić makro usuwania Np ostatniego wiersza, ale to ew. później. Wyłączam komputer, idzie nowa burza...
Przepatrzyłem kilka przykładów z sieci i udało się sklecić coś co działa poprawnie. Abyście nie szukali nadaremno - zamieszczam kod: [syntax=vb] Sub OblatywaczPrototypów() Dim MyDir As String Dim CurrentFile As Variant Dim i As Integer Dim ChosenFile As String ChosenFile = Application.GetOpenFilename(FileFilter:=... Files (*.xls), *.xls", Title:="Wybierz...
Hej, kochani. Zwracam się o pomoc z makrami, które opiszę zaraz poniżej. Kilka dni temu postanowiłem zrobić sobie program, który nieco ułatwiłby mi pracę. Uczę się VBA od zera i o ile z początku fajnie łapałem i po kilku-kilkunastu próbach drobne problemy rozwiązywałem, tak teraz zaczęły się schody. Makra, w dalszym ciągu są banalnie proste, lecz zagmatwałem...
... Ok wstążka z makrami ogarnięta ... Na pewno ? I jak jest uruchamiana ? Uruchamianie i usuwanie menu "KOSZTORYS" aktywowane jest makrami z modułu "Ten_soroszyt": ... No i prośba o dodanie do tej listy tego pola z możliwością podania ilości j.m Jak by to miało wyglądać? I tutaj kolega pospieszył się ze swoimi poprawkami, a ja spóźniłem ze swoimi...
To wersja makro, które wrzuciłem dokładnie to robi. Po przemieleniu Twoich przykładowych danych pozostało dokładnie 100 wierszy, z czego zostały tylko wiersze z "invoice" w opisie a także wiersze z kwotą 5.00 niezależnie od reszty opisu.
Mam prośbę do ludzi zajmujących się #programowanie #vba o małe makro do Word-a. Pewnie sam bym je wymęczył, ale z moja nikłą wiedza trwało by to długo. Natomiast dla zawodowca to pewnie chwila. Makro ma wstawić zakładkę w miejscu kursora czy aktualnego zaznaczenia, a nazwa zakładki ma być wzięta z aktualnie zaznaczonego tekstu (o ile coś jest zaznaczone)...
Poproszę o sugestie... Moim zdaniem taki kod przy 1 mln rekordów jest bardzo ryzykowny :!: Jeżeli wytniesz taką kolumnę i z jakichkolwiek względów makro się zatrzyma - to tracisz te dane :cry: Bezpieczniej by było skopiować cały arkusz do drugiego arkusza i dopiero tam wykonać to makro :idea: :D Przewidziałam to:) Całe makro podzieliłam na 5 części...
Witam Potrzebuje pomocy przy napisaniu makra excel W kolumnie M mam 10 typów wartości liczbowych powtarzających się, pomieszanych. Chciał bym aby makro znalozło wiersze w kolumnie M zaierające wartości 1224, 1228 i 1232 Po czym usunęło całe wiersze, czyli wszystkie dane we wszystkich kolumnach w tym wierszu który zawiera te liczby. Ale tak było nie...
Hmmm, Poradziłem sobie następująco, natomiast nie wychodzi mi zaszywanie dodatkowego warunku w tym kodzie. Obecnie makro przegląda arkusz źródłowy wyszukując jednego sprzedawcy (Agnieszka). Natomiast jak próbuję wcisnąć tam kolejną pętlę, aby wyszukał "Andrzej" i przeniósł wiersze do Arkusz3, "Basia" - do Arkusz4, "Iza" do Arkusz 5 itp, polecenie i...
Witam. Mój problem wygląda następująco: Dostaje plik excela w którym są dane z kilku plików pdf. Dane wyglądają następująco: Nagłówek - kilka linijek Dane - tabela numerowana od 1 do różnie czasem do 100 czasem ponad 1000 pozycji. Stopka - kilka linijek Nagłówek itd. Chodzi mi o takie makro które sprawdzi które wiersze mają w kolumnie A liczbę, natomiast...
Np. takie makro: [syntax=vbscript]Public Sub PusteKomentarze() Dim i As Long Dim OstW As Long OstW = Range("A" & Rows.Count).End(xlUp).Row For i = 1 To OstW If Not (Range("A" & i).Comment Is Nothing) Then If Range("A" & i).Comment.Text = "" Then Range("A" & i).ClearComments End If End If Next i End Sub [/syntax]
Kurde ja się nie spotkałem jeszcze nigdy żebym nie umiał sciągnąć nadmiaru cyny. Ja robie tak jak bbx albo i podobnie. Daje fluxa, świerzej cyny i krotem jade miejsce po miejscu tyle że wyższa temp. Bo jak swiera z masa to cieżko bedzie wygrzac jak masz ustawione 330*C. Daj około 400*C. jeśli masz możliwość to zrob fotke w makro i pokaż jak to wygląda.
OK, faktycznie działa. Skoro więc zarzucamy temat makra, i korzystamy z konsoli to jeszcze jedna sprawa: czy jest szansa żeby w składni polecenia łączącego pliki w całość zawrzeć warunek, który będzie pomijał ostatni wiersz każdego pliku CSV. W plikach źródłowych ostatni wiersz jest podsumowaniem, które nie jest mi potrzebne i które również trzeba ręcznie...
Zakładam, że za aktualizowanie odpowiedzialne jest jakieś makro. Dopisz wstawianie komórki (Range("A1").Insert Shift:=xlDown) i usuwanie końcowej przed zasadniczą procedurą. Dzięki za podpowiedź, ale to makro które aktualizuje komórkę A1 jest zahasłowane i nie da rady nic dopisać. Trzeba by zrobić nowe tylko do przesówania komórek. Mogłbyś napisać...
Proponuję coś takiego. Oczywiście musisz to sobie dostosować, dodać usuwanie niepotrzebnego kawałka danych, itp. [syntax=vbnet] Sub Test1() Dim y1 As Integer, y2 As Integer y1 = 20: y2 = 20 Do While Cells(y1, 1) <> "" Cells(y2, 2) = Cells(y1, 1) Cells(y2, 2) = Cells(y1 + 1, 1) y1 = y1 + 2: y2 = y2 + 1 Loop End Sub [/syntax]
marcinj12, Dzięki za tę podpowiedź. Poprawie to w kodzie i zobacze czy choć trochę przyspieszyło. Szczerze mówiąc to nie wiem, która zajmuje więcej czasu, wydaje mi się, że delete, ponieważ jest odpalana dwa razy (w dwóch arkuszach). Jeżeli chodzi o ilość danych, to przy około 300 wierszach radzi sobie w miare szybko, jednak już przy tysiącu, niestety...
Do wywołania reakcji na wprowadzane do arkusza dane (odpowiedzi na pytania) wykorzystaj procedurę zdarzeniową arkusza: Target - Komórka podlegająca zmianie. W konstrukcji z ".Cells(1,1)" odnosi się do komórek scalonych Intersect - Sprawdza czy "Target" i komórka mająca wywoływać określoną reakcję, to jedna i ta sama komórk, czy też nie Jeśli ta sama...
Witam, Próbuję napisać makro do poniższej tabeli (numerom porządkowym przypisane są dwa wiersze), takie aby w momencie kiedy data wpisana przy danym numerze porządkowym jest o 30 dni starsza od daty aktualnej, automatycznie usuwało zawartość dwóch ostatnich komórek z danego rzędu (zaznaczone na zielono), niestety moje umiejętności pozwalają tylko na...
Np dla kolumn A:C On Error Resume Next 'nie zatrzymuje się na pustych i słowach For k = 1 To 3 For w = 1 To ActiveSheet.UsedRange.Rows.Count Cells(w, k) = Replace(Trim(Cells(w, k)), ".", "") * 1 Next Next Dla pewności dodałem usuwanie spacji gdyby się jakieś zaplątały...
Wyłącz odświeżanie ekranu przed pętlą (Application.Screenupdating=false) a za pętlą włącz ponownie (=true)
w załączniku są trzy pliki (właśnie na tych plikach chce pracować). w pliku "test1.xlsm" znajduje się dwa kody, pierwsze makro "pobieranie danych" działa prawidłowo. nie mogę sobie poradzić z tym drugim. w plikach "already late.xlsx" i "test.xlsx" znajdują się dane na, których chce pracować.
Dzięki, ale z twoim uzupełnieniem makro USUWA wszystkie zielone teksty które dokona zaznaczenia w całym dokumencie wszystkich wystąpień fontu z danym formatowaniem, by można było usunąć teksty z tym formatowaniem [syntax=vbscript]Sub Makro2() ' ' Makro2 Makro ' ' Selection.Find.ClearFormatting Selection.Find.Font.Color = 5287936 With Selection.Find...
jednym zdaniem? hmm... popatrz na ramkę w przykładzie jak dodaje kolejną to nadają im się numery: pierwsza ta kopiowana ma nr 1, a dodawane nr 2 itd. więc jest to numerowanie ramek. P.s. A przy okazji ta ramka, którą pokazuję jest przykładowa - oficjalna (nie do pokazania na formum ;-)) jest już mega rozbudowana i nagrywanie makra kopiowania robi się...
U mnie nie działa :cry: cały czas wyrzuca ten run-time error (może mam coś nie włączone w ustawieniach MS Office), ale z drugiej strony jak puszczam to makro w wersji gdzie wskazuje dokładnie jak ma się nazywać plik, to wszystko chodzi? Dziwne. Na pewno ten obiekt 'ActiveDocument' jest w porządku w kodzie? Mam jeszcze pytanie, zostańmy przy tej wersji...
Spróbuj na początku Twojego makra do usuwania danych wyłączyć zdarzenia arkusza [syntax=vbscript]Application.EnableEvent... = False[/syntax] a na końcu makra ponownie je włączyć [syntax=vbscript]Application.EnableEvent... = True[/syntax]
Wygląda to trochę inaczej niż założenia o jakich była mowa w pierwszym poście, tematy się powtarzają. Dla filtra potrzebna będzie lista unikatowych nazw tematów, realizowana w arkuszu przez wstaw>wklej specjalnie i dalej jak w moim przykładzie. Lub makro (uruchamiane np przy aktywacji arkusza "Menu") z wykorzystaniem tablicy, jeśli ma to działać automatycznie...
Dzięki za info. Spróbuję i pokarzę rezultat. Teraz klecę wcześniejsze etapy. Skończyłem 1. czyli przenoszenie danych. Teraz zaczynam 2 czyli układanie danych i usuwanie dubli, a łączenie tekstu będzie w 3 etapie Dodano po 5 Mam prośbę o krótki przykład. Nie dałem rady sam nic zdziałać. Dzięki.
Makro działa bez zarzutu. Dziękuję za pomoc. Temat do zamknięcia.
To ja opiszę w jaki sposób na OSD wyświetlić godzinę :D . Nie różni się to zbytnio od sztuczki z winampem, więc tworzymy makro, a w nim dwa polecenia: Okno/Pobierz podpis, w X/timeout wpisujemy wartość literową (np. time) , zapisujemy i CEL przeciągamy na zegar na pasku zadań i zaznaczamy tylko opcje: Shell_TrayWnd oraz TrayClockWClass . W drugim poleceniu...
excel makro usuwanie makro usuwanie kolumny makro usuwanie wierszy
podłączenie napędu fotokomórek ciężka rozruch zimne silnik sprzedam dozymetr
sterownik foster sprawdzenie grzałki pralki
Funkcje systemu ABS w pojazdach Zakres ciśnienia -1 do 15 bar: zastosowania i znaczenie