Dla podkładu: aplikacje webowe mają z zasady trudność z "bardzo fajnym", kontrolowanym drukowaniem. Z kilku powodów, w tym przeglądarki zabezpieczają komputer użytkownika przed ingerencją z weba - zupełnie słusznie. W konsekwencji twórcy aplikacji webowych maja bardzo mały wplyw na szczegóły drukowania, ich większa władza kończy sie na oknie przeglądarki....
ws to zmienna tymczasowa, w której pętla for each przechowuje Worksheet z kolekcji na którym akurat jest. To makro działa na arkuszach workbooka, na którym zostało uruchomione (ThisWorkbook.Worksheets), jego nazwa nie ma nic do rzeczy...
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...
[syntax=vbscript]Sub usun() For Each c In ActiveWorkbook.Names c.Delete Next End Sub[/syntax]
Weź Koleżanko sprawdź makro dla załączonego pliku... Potem porównaj ze swoim plikiem.
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
Jeśli dobrze "odczytałem" Twoje rysunki i opisy :crazyeyes: to efekt taki jak na zrzucie :spoko: 979159 można uzyskać poprzez makro powiel w załączonym pliku 979160 Jeśli będziesz chciał mieć plik "wielokrotnego" użytku :please: to każdorazowo musisz go "odświeżyć" poprzez oczyszczenie makrem Usun :!: z poprzednich arkuszy (bo nie może być 2 arkuszy...
Po zakończeniu kopiowania nie jest zwracania na pierwszy arkusz
Powinieneś załączyć przykładowy plik Excela, bo za dużo jest niejasności w tym, co napisałeś. Przykładowy kod, który działa wg Twojego opisu: [syntax=vbscript]Sub AddSheets() ' zakładamy, że nazwy nowych arkuszy ' są w komórkach od B5 w dół Dim ostw As Long, w As Long ostw = Arkusz1.Cells(5, 2).End(xlDown).Row For w = 5 To ostw Sheets.Add(After:=Sheets(Sheets.Count))....
[syntax=vbscript]Sheets("2").Range("C1")... = vbRed[/syntax]
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,...
Też nie pisałem pod Googla, ale jest możliwość nagrywania makr, a to już dużo. Na przykład: [syntax=objc]function Makrobeznazwy() { var spreadsheet = SpreadsheetApp.getActive(); spreadsheet.getRange('B4').activate(); spreadsheet.getCurrentCell().setValue('1... spreadsheet.getRange('B7').activate(); spreadsheet.getRange('B5').copyTo(spread...
Witam Jeśli chcesz tylko wartości z innych arkuszy, pomoże to makro. wynik w arkuszu 1. Wszystkie arkusze muszą być nagłówek ID, bo nie wiem, w którym część arkusza są dane
To sprawdź sobie takie rozwiązanie.
Pomogę w ten sposób: Tak przypisujesz nazwę z danej komórki Nazwa_z_komorki = Worksheets("KON").Cell... 1).Value i podobnie ilość Ilosc_z_komorki = Worksheets("KON").Cell... 2).Value Do powyższego cells(nr wiersza,nr kolumny) dodanie arkusza: Sheets.Add Nadanie nazwy arkuszowi: ActiveSheet.Name...
Z ActiveX nie trzeba aktywowac arkuszy i zaznaczyc checkBox,[może mieć taką samą nazwę (na różnych arkuszach)]
Po co kompilator? Mała podpowiedź - klawisz F8 w kodzie VBA. To co chcesz uzyskać zrobisz takim prostym kodem: [syntax=vbscript]Sub DzialajNaPlikach() Application.ScreenUpdating = False Dim Sciezka As String, Plik As String, PlikZrodlowy As Workbook, ArkuszDocelowy As Worksheet Sciezka = "c:\sas\" Plik = Dir(Sciezka & "*.xls*") Set ArkuszDocelowy...
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....
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...
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 <>...
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)...
jak zapisać dla zmiennych nazw arkuszy Jeśli zadeklarujesz jako stringi i będziesz tworzył funkcjami tekstowymi nowe nazwy arkuszy to możesz to zrealizować np [syntax=vbscript]Sheets("dest").Copy After:=Sheets(4) Sheets("dest (2)").Select Sheets("dest (2)").Name = nazwa dWb.Save[/syntax]
[syntax=vbscript] On Error GoTo SubStop For Each Sheet In Worksheets Sheet.Test Next Sheet SubStop: On Error GoTo 0[/syntax]
[syntax=vbscript]Sub Petla() y = 9 For x = 7 To 400 Step 6 Sheets("Arkusz1").Cells(y, 1) = Sheets("Arkusz2").Cells(x, "J") y = y + 2 Next End Sub [/syntax]
Jeśli to ma działać w kilku czy we wszystkich arkuszach, trzeba ustawić formatowanie warunkowe w każdym z tych arkuszy. Zdarzenie SelectionChange można oprogramować na poziomie skoroszytu. Można to wszystko zapisać w VBA, ale trzeba określić zakresy formatowania i arkusze. W załączonym pliku kod, który we wszystkich arkuszach roboczych formatuje zakres...
Musisz wykorzystać w kodzie danego arkusza np 'worksheet_activate' i wtedy call makro
Trochę przerobiłem. Działa pod warunkami: 1) lista firm pobierana jest z arkusza "Sty". Jeśli w innych arkuszach (miesiącach) będą różnice należy do tworzenia listy użyć makr. 2) Arkusze muszą mieć taki sam układ (wspólne makro) 3) Indeks (łącze komórki pola kombi) jest wspólny dla wszystkich arkuszy.
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.
Poczytaj w helpie excela o funkcji "wyszukaj pionowo" lub "vlookup"
Zrob przeliczane calego skoroszytu manualnie, tylko w kodzie arkuszu(roboczy) wpisz
Hmm, u mnie działa...
Wykorzystaj dwie kolumny. W pierwszej nazwisko, w drugiej nazwa/indeks przydzielonego arkusza. Reszta w załączniku. Makro przy każdej aktywacji robi porządek z hiperłączami i ukrywa arkusze.
[syntax=vbscript]Sub Odkryj() For x = 6 To Sheets.Count Sheets(x).Visible = True Next End Sub [/syntax]
makra, które będzie przenosić dane z jednego arkusza do innego Efekt taki możesz uzyskać np takim kodem: 968551
Witaj, wszystko jest możliwe [syntax=vb] sub Idziemy() Dim tbl As Range Set tbl = Sheets("Jacek").Range("W:W").Cells If Application.Intersect(ActiveCell, Range("a1:k500")) Is Nothing Then MsgBox "Bledne odwolanie - wybierz poprawna komorke" Else r = Application.Match(ActiveCell, tbl, 0) Application.Goto tbl(r) End If end sub [/syntax]
[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]
musisz dodać jeszcze wybór arkusza: Sheets(arkusz).Select
Zobacz, czy o to chodziło. Zaznacza komórki na zielono lub czerwono wtedy gdy zarówno komórka testowana, jak i obie komórki określające przedział zawierają liczby. To zliczanie komórek zielonych i czerwonych - gdzie miałyby być wyświetlane wyniki? Tymczasem są w komórkach AI8 i AI9 w arkuszu T3.
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...
Załączam przykładowe makro: - zapisu do pdf bieżącego arkusza Excela - wydruk pliku arkusza za pomocą komendy Shell i Acrobat DC - wydruk zewnętrznego pliku *.pdf za pomocą komendy Shell i Acrobat DC. Nie ma żadnych zabezpieczeń (błędne ścieżki, brak plików itp.) Trzeba uzupełnić własną ścieżkę do Acrobat.exe. Oczywiście to tylko prosty przykład, możliwości...
Przecież pod linkiem jest składnia. Cytuję przykład dodania arkusza przed obecnie aktywnym: [syntax=vbscript]ActiveWorkbook.Sheets.A... Before:=Worksheets(Worksheets.Count) [/syntax]
Skopiowany zakres do nowego arkusza nie jest obszarem nazwanym Tabela_test, stąd błąd.
Dodatkowe kolumny z Łączenie A & B & C Tam zastosować podaj pozycie
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.
kwestia zabawy z ustawieniami strony i marginesów To wcale nie jest zabawa :| - to jest bardzo ważny element całej procedury VBA, bez pełnej jasności co wchodzi w obszar wydruku (czy tak jak pisałeś wcześniej Arkusz2!A2:B25, czy Arkusz1!A1:G45 :cry: ) nie można zbudować prawidłowego kodu makra :not: Najprostszą metodą uzyskania makra (również w OpenOffice)...
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")....
[syntax=vbscript]Application.ScreenUpdat... = False If Not Sheets("Arkusz2").Visible Then Sheets("Arkusz2").Visible = True Sheets("Arkusz2").Select Range("A2:E10").Select Selection.Copy Sheets("Arkusz1").Select Range("a1").Select ActiveSheet.Paste Application.CutCopyMode = False Sheets("Arkusz2").Visible = False ActiveWorkbook.Save Application.ScreenUpdating...
Może wstaw plik z danymi dla ułatwienia temu, kto się za to weźmie.
[syntax=vbnet]Sub Bazy() On Error Resume Next Dim a As Worksheet, b As Worksheet Set a = Sheets("Baza danych A") Set b = Sheets("Baza danych B") a.Select owa = Cells(Rows.Count, "B").End(xlUp).Row owb = b.Cells(Rows.Count, "C").End(xlUp).Row For x = 5 To owa w = "" w = Application.Match(Cells(x, 2), b.Range("C5:C" & owb), 0) + 4 If w > 0 Then Cells(x,...
W załączniku.
Pewnie makro masz w kodzie arkusza. Musi być w module... Jeśli to procedura zdarzeniowa, wywołaj je po nazwie (Call NazwaMakraInModule)
:) Może byś jednak zdarzenie arkusza oprogramował?
Makro przygotowane w Excelu 2003 (ale powinno działać): Sub Makro1() For a = 3 To 8 'te arkusze bierze pod uwagę Sheets(a).Select If Range("J1") > 0 Then ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True End If Next End Sub
Wykorzystaj zdarzenie Worksheet_Activate . Najprościej[syntax=vb]Private Sub Worksheet_Activate() Call CommandButton1_Click End Sub[/syntax]
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:=...
Wyszło mi coś takiego[syntax=vb]Sub Pobierz() Dim nazwa As String Dim ark As Worksheet Dim wrs As Long, j As Integer, i As Long nazwa = "Arkusz2" 'nazwa arkusza docelowego 'tutaj 2 dla porównania z 1 ThisWorkbook.Activate 'gdyby nie był Sheets(nazwa).Range("A2:H65536").ClearCo... 'czyścimy wrs = 2 '1-szy wiersz docelowy j = 3 '1-sza kolumna źródłowa...
coś poszło nie tak Jak widać na zrzutach :please: ja załączyłem i opisuje plik ProtUpBase.xls , a koleżanka otwiera jakiś plik (po nazwie sądzę, że też mój :D ) ProtTablica.xlsx , który żadnego makra rzeczywiście nie zawiera :cry:
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...
Macie może pomysł jak to zapisać żeby kod działał i żeby nie trzeba było robić tak ,,naokoło"? [syntax=vbscript]Sub zamykanie_miesiąca() For s = 2 To 73 If Sheets("Panel_Sterowania").Cells(4, s) = "TAK" Then Sheets("FTC.023").Columns(4 + s).EntireColumn.Hidden = True End If Next s End Sub[/syntax]
Witam. W arkuszu mam utworzone makro do odznaczania pola wyboru Sub czyszczenie_komórek() Worksheets("wydatki").CheckBoxes.Value = False End Sub Problem pojawia się gdy chcę zmienić nazwę arkusza (lub wykonać jego kopię - co również powoduje zmianę nazwy). Wówczas makro przestaje działać, bo w kodzie makra jest odwołanie do nazwy arkusza, która przecież...
Aby wydrukować jeden szablon, możesz użyć prostego przepisania wartości (lub nawet formuł): [syntax=vbscript]Arkusz2.Range("A1:E6").... 'wyczyść stare dane na szablonie Arkusz2.Range("A1").Value = Arkusz1.Range("A1").Value Arkusz2.Range("A3").Value = Arkusz1.Range("G5").Value Arkusz2.Range("A5").Value = Arkusz1.Range("G3").Value * 1000 & "...
Spróbuj [syntax=vb]For Each kom2 In Sheets("Arkusz2").Range("A1:A500") If kom2 <> Empty Then For Each kom1 In Sheets("Arkusz1").Range("A1:A500") If kom1.Value = kom2.Value Then kom2.Offset(0, 13) = kom1.Offset(0, 13) kom2.Offset(0, 14) = kom1.Offset(0, 14) Exit For End If Next End If Next[/syntax]
Sądząc po nazwie ("Polewyboru") to nie ActiveX tylko formularzowe. Wykorzystaj wartość komórki wpisanej jako "łącze komórki"... P.S. Na końcu procedury włącz odświeżanie ekranu.
Próbowałem pozmieniać nazwy arkuszy na "ActiveSheet" A tak? [syntax=vbscript]Sub Sort1() With ActiveSheet .Range("F607:J617").Select .Sort.SortFields.Clear .Sort.SortFields.Add Key:=Range( _ "H607:H617"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _ xlSortNormal End With With ActiveSheet.Sort .SetRange Range("F607:J617") .Header = xlGuess...
Przetestuj makro z załączonego pliku. Arkusze 1 - 4 to arkusze z danymi źródłowymi Arkusz5 - arkusz na wiersze wytłuszczone
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...
Przyznam, że u mnie w domu jest to samo co u ciebie. W pracy zapisywało mi bez przycisku a jedyna różnica to taka że w pracy mam W7 co nie powinno mieć wpływu. Edit: A może w pracy już dodałem tą linijkę kodu i dlatego mi działąło. Poniżej kod kolegi adamasa z linijką usuwającą przycisk. [syntax=vb]Sub Zapis() sc = "C:\" 'wpisz path jako string, koniecznie...
[syntax=vb]Sub doBazy() r = 1 With Sheets("raport") While .Cells(r, 1) <> "" rb = Application.Match(.Cells(r, 1), Sheets("baza").Columns(1), 0) .Cells(r, 2).Resize(, 5).Copy Sheets("baza").Cells(rb, 2) r = r + 1 Wend End With End Sub [/syntax]
O coś takiego chodzi? [syntax=vb]ost_wiersz = Worksheets("Arkusz2").Range("A" & Rows.Count).End(xlUp).Row Worksheets("Arkusz2").Range("A" & ost_wiersz + 1 & ":H" & ost_wiersz + 1).Value = Worksheets("Arkusz1").Range("A1:H1").Val... Worksheets("Arkusz1").Range("A1:H1").Cle...
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")...
Sprawdź [syntax=vbscript]Sub wplata() Dim objSheet As Worksheet Dim i&, a&, b& With Application .ScreenUpdating = False .Calculation = xlCalculationManual .EnableEvents = False End With For Each objSheet In Worksheets With objSheet a = .Cells(2, Columns.Count).End(xlToLeft).Column .Cells(13, 1).Resize(, a).Interior.ColorIndex = xlNone If Application.CountIf(.Cells(13,...
ż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.
W załączniku jest hasło - 'a'. Blokowane jest wpisywanie w kolumnie A. 2x klik na komórkę w A pokazuje datę wprowadzenia. Chcąc zdjąć blokadę, zdejmujemy zabezpieczenie arkusza.
Cześć. A może coś więcej bo na razie z informacją jest oszczędnie? Jak zablokowany (włączona ochrona)? Najprostszym sposobem jest go makrem odblokować, ukryć/odkryć wiersze i zablokować (też makrem) na nowo. Do odblokowania służy: [syntax=vbscript]Sheets("Arkusz").Unprot... Blokuje natomiast: [syntax=vbscript]Sheets("TMP").Protect[/...
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...
Spróbuj makra jak w załączniku uruchamianego przy otwarciu skoroszytu. Ale jeśli masz bardzo dużo zależności, to wyświetlenie wszystkich może być nieczytelne.
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....
Wywołaj w kodzie arkusza 'Kredyty' (makro 'ListaZb' w module) [syntax=vb]Private Sub Worksheet_Activate() ListaZb 'nazwa uruchamianego makra End Sub[/syntax]
Wygląda na to że bez zmian dla przykładu jeden wiersz a arkuszu Arka w którym sformatowałem ceny kolorem czerwonym: Sam chciałeś W nagranym przeze mnie makrze takie wklejanie daje taką linijkę kodu: Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats Niestety nie wiem czy można ja dopisać do Twojego makra. Niestety nie potrafię z kodu wychwycić...
Jeśli plik jest w formacie >Office2003 (xslx, xlsm, docx, docm, etc), należy zamieszczać po spakowaniu zip/rar.
Witaj. Skróć to wszystko do: Sheets("Dane").Range... Teoretycznie nie powinien wtedy zmieniać arkusza ani obecnie zaznaczonej komórki.
Stoję przed ostatnim w zasadzie problemem mianowicie w jednym z pól mam taką formułkę: ='10-07-13'!C25+'11-07-13'!C24 która jak widać opiera się na pobieraniu wartości z pola z poprzedniego dnia+wartość z pola z obecnego dnia. czy mogę jakimś sposobem zmodyfikować tą formułe (lub powyższe makro) tak aby sama wiedziała że ma korzystać z zadanych pól...
OK. Teraz mam pilne zadanie, w godzinach wieczornych coś do rozwiązania. ... Tu to jest [syntax=vb]Sub copyNumKs() Dim bd As Range, bs As Range, r& With Sheets(1) Set bd = .Cells(1, 5).Resize(.Cells(Rows.Count, 1).End(xlUp).Row, 1) End With With Sheets("wydruk") Set bs = .Cells(1, 2).Resize(.Cells(Rows.Count, 1).End(xlUp).Row, 2) End With For r = 2...
Załączam przykładowe rozwiązanie z użyciem makr. Raczej jako ciekawostkę. Koder ze mnie marny, ale działa jak chciałem. Plusy: - sprawdzanie poprawności nazwy pokoju - sprawdzanie, czy przydzielona liczba osób zmieści się w pokoju - można przydzielić dwa nazwiska do jednego pokoju - makro działa na dowolnej liczbie pokoi zdefiniowanej w arkuszu (max...
zrobienie makra dla wyliczania wartości Dlaczego nie dobry formuly(funkcji)? np. dla H4 =LICZ.WARUNKI(abc!A:A;F4;abc!F:F;"BA")+L...
Spróbuj z hasłem (zmień wartości, jeśli ma być odwrotnie)[syntax=vb]Sub makro1() ' ' makro1 Makro ' blokowanie komórek i ochrona arkusza' ' Klawisz skrótu: Ctrl+r ' ActiveSheet.Cells.Locked = False With ActiveSheet.Range("C9:F13,C15:F19,C21:F2... .Locked = True .FormulaHidden = False...
Moim skromnym zdaniem ostatni dodany arkusz ma najwyższy indeks (nazwę tylko nie tę widoczną w Excelu pod arkuszem) Ustalić go można prosto korzystając z: [syntax=vbscript]OstArk = ActiveWorkbook.Sheets.Count[/syntax] skopiować na koniec: [syntax=vbscript]Sheets(OstArk).Copy After:=Sheets(OstArk)[/syntax] i ostatni krok ze zmianą nazwy: [syntax=vbscript]...
Czy takie makro w kodzie arkusza spełni zadanie? [syntax=vba]Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.CutCopyMode = False Application.CellDragAndDrop = False End Sub[/syntax]Pozostaje możliwość kopiowania przez schowek systemu Office i makrem.
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...
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
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]
W VB używamy przecinka. Np Range("A1:A1200,B5:B10&...
Być może, ale co z powtarzających się kombinacje "data transakcji - kwota - numer karty" ? Z dużej bazy danych takich zdarzeń mogą być spowoduje że wiele niejasności. Skąd się bierze dane w arkuszu RAP? (źródło) Jest to możliwe, w RAP daty transakcji z dokładnością do sekundy?
[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...
Set Wb=Open(Fn) ==> Set Wb = Workbooks.Open("D:\abc\" & Fn) Zbyt dosłownie potraktowałeś ogólny zapis o otwarciu pliku.
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
Dzięki. Już mam. Zamykam temat
Jaky format w A1? Sprobuj Sheets(Range("A1").Text).Select
Witam proszę o pomoc z dostosowaniem makra: Chciałbym aby makro (arkusz źródło) po dopisaniu argumentów(Miast) z kolumny "M" nie usuwało innych dopisanych prze ze mnie arkuszy, które nie znajdują się w tejże kolumnie. dopisałem Arkusz6 oraz Arkusz7. Przy uruchomieniu makra arkusze znikną. Dziękuję
makro kopiujace arkusze arkusze google makro arkusze google
ustawienie anteny warszawa cewka pompa lm350 ograniczenie prądowe
Usuwanie nadmiarowych spacji w pliku txt Pythonem Viessmann Vitoclima - Klimatyzatory i Pompy Ciepła