Ja po prostu nie wiem o co Ci chodzi.:)
Zazwyczaj funkcja powinna zwrócić wartośc Spójrz w pomocy VBA przykład funkcji(Help - Writing a Function Procedure) Twoja funkcja nie zwraca żadnej wartości.
Makro w oddzielnom skoroszycie [syntax=vb]Sub wypelnienie() Dim rd&, rs&, bd As Worksheet, bsh As Worksheet rs = InputBox("Wprowadz numer wiersza danych", "Wiersz #?", 1) path_A = "d:\AAA\" path_B = "d:\AAB\" Set bsh = Workbooks.Open(path_B & "BAZA").Sheets(1) Set bs = Range(Cells(rs, 1), Cells(rs, 7)) plik = Dir(path_A & "*.xlsx") While...
Spróbuj takiego makra: [syntax=vbscript]Sub Powielanie() Dim ile As Long, w As Long w = 1 Do With Cells(w, 2) ile = .Value .ClearContents .Offset(1, -1).Resize(ile - 1, 2).Insert xlShiftDown .Offset(0, -1).Resize(ile, 2).FillDown w = w + ile End With Loop Until Cells(w, 2) = vbNullString End Sub[/syntax] Makro działa w arkuszu aktywnym zgodnie z przedstawionymi...
zdecydowanie początkujący Ale pomoc podręczna mimo wszystko jest dostępna ... :-) A z tym poniżej, jak działa ? [syntax=vba]Option Explicit Private Sub Workbook_Open() Dim ark As Worksheet For Each ark In ThisWorkbook.Worksheets(Array("Inne", "Beton, pompy", "Stal", "Elementy murowe i zaprawy", "Kruszywa", "Szalunki", "Sprzęt", "Żurawie", "Kontenery",...
Nie bardzo rozumiem co z tym "Znacznik" :( W każdym razie linia, w której znajduje się kursor: Ln = Selection.Range.Information(wdFirstChara...
Jeżeli w komórce ma się "pojawić" napis "Nie dotyczy" a w innym przypadku masz wprowadzać datę to tak jak sam napisałeś w pierwszym poście: tylko proste makro to załatwi. Niestety funkcja jeżeli w tym przypadku to za mało. Kłopot polega że nie masz pojęcia o makrach (jak sam mówisz), a makro trzeba ustawić w "modułach zdarzeniowych" arkusza. Np. takie:...
a moze mni ktos napsać jak to dokładnie zrobic bo za bardzo nie wiem
Witam (at)adamas_nt podał linka gdzie masz tam wstawianie procedury.
W pliku "Spis" jest 6 komórek do których mają być zaciągnięte dane z pliku"Dane". W makro widzę, że dane są pobierane z pliku arkusz1.xls w folderze C:\Dane_\ Utworzony plik z danymi na dysku C i nie trzeba nic kliknąć. Wystarczy otworzyć plik Spis_xxxx. Testowano to. Jaka jest rzeczywista ścieżka do plików danych?
Męczę raport i próbuje napisać makro , które by działało następująco: Jeśli komórka w plik1 ma określoną wartość (np wtorek) to przenieść wartość komórki która jest pod nią (w następnym wierszu) do pliku2 w miejsce (X,Y). Proszę pomóżcie.
Witam wszystkich życzliwych, z góry bardzo dziękując za pomoc. Zasięgałem już porady na tym forum ale potrzebuję doprecyzować już na konkretnym przykładzie. W załączeniu zamieszczam projekt, który potrzebuję stworzyć. Do rzeczy, potrzebuję stworzyć makro, które będzie przeszukiwało folder z plikami w których będą dane źródłowe i przenosiło te dane do...
VBA nie obsługuje polskich nazw formuł, tylko ich angielskie odpowiedniki. Najprościej zrobisz to tak, że włączasz rejestrator makr, wpisujesz w Excelu formułę i kończysz rejestrowanie. Potem przechodzisz Alt+F11 do kodu, wchodzisz w moduł i odnajdujesz ostatnie zarejestrowane makro. Z niego kopiujesz wspomnianą formułę, ewentualnie poprawiając jej...
Witam. mam z drobna odrębny problem a mianowicie. Pracuję na cenniku w excelu gdzie są numery produktów OE i nasza oraz cena. Chciałbym to zautomatyzować makrem tak aby wyszukiwało po numerze OE i zwracało numer nasz i cenę. Prosze o pomoc. Super gyby to działało w nowym oknie Pozdrawiam
Dane docelowe będą bardziej skomplikowane, ale na podstawie "szablonu" sam będę próbował dostosować do moich potrzeb. Potrzebuję wsparcia na start, bo VBA jeszcze nie wchodzi jak trzeba Jeśli dobrze odczytuję Twoje zadanie :?: - uzyskanie efektu takiego jak na zrzucie 1144985 To na początek możesz wypróbować makro z załączonego pliku Protraport.xlsm...
Zdaje się, że dla każdego powiatu musisz mieć osobne procedury dla przycisków. W przykładzie makro "orientuje się" po nazwie miasta wpisanej w komórce zakrytej przyciskiem.
Ten plik, który pokazałeś jako wzór ma zupełnie inną strukturę i raczej trudno go dopasować do Twojego nowego pliku. Szkoda, że nie ma w nim żadnych danych, żeby zweryfikować czy formuły kopiują się poprawnie. Poza tym nie wiem, czy tak jak w pliku wzorcowym istotne jest wstawianie wierszy, czy wystarczy samo kopiowanie. W pliku wzorcowym były podsumowania,...
Pętla, podstawianie (replace), porównywanie długości ciągów (len), rozbijanie ciągów (split), podstawianie, porównywanie, rozbijanie, itd. W zależności, czy warunek spełniony wstawianie wiersza, dodanie wartości, mnożenie *10, lub przepisanie. Mnóstwo kombinacji, ale do zrobienia.
Doczytałem jeszcze, że wszystko odbywa się w tym samym arkuszu. W takim przypadku musisz zagnieździć dwie pętle. Zewnętrzną Do...Until z inkrementacją wiersza, gdzie warunkiem będzie niepusta komórka i wewnętrzną For...Next również ze zwiększaniem indeksu wiersza. Taki szybki przykład "pisany na kolanie"[syntax=vb]wrs = 1 Do While Cells(wrs, 1) <>...
...gdy wstawie przycisk w tym samym arkuszu co dane to wszystko działa, natomiast gdy wstawie przycisk do drugiego arkusza to wywala mi błąd... Wydaje mi się, że to wyłącznie wina adresowania. W makrze brak pełnego adresu zakresu komórek do którego się odwołujesz. Poczytaj o obiekcie "Range" Excela. Choćby tu: [url=https://msdn.microsoft.com/en-us/li...
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,...
Makro jest bardzo dobre. Jeżeli zmienisz na:[syntax=vb] Set kom = Selection [/syntax] to obrazek wklei się w całej, scalonej komórce.
czyli aby bylo 21111 10 aaa 5 bbb 3 ccc 2. Nie wiem czy takie cos jest mozliwe Hmmm, teraz już będzie trudniej ;) Na szczęście Excel i VBA oferują coś a'la tabelki przestawne. Zmień zapytanie SQL na Sql = "TRANSFORM [SIGN] & "" "" & Sum([hours]) " & _ "SELECT [Activity],...
Nagraj makro usunięcia scalenia, wstawiania wiersza, ponownego scalenia i zapętlij...
jak da radę to tak
Proszę tymczasem sprawdzić poniższe procedury:[syntax=vb]Option Explicit Sub Test() Dim strListSep As String strListSep = Application.International(wdListSeparato... If Spaces2Space(strListSep) Then If CyfraJednostka(strListSep) Then If ThousandsSeparator160(strListSep) Then MsgBox "Koniec...." End If End If End If End Sub ''---------------------------...
Wstawiasz przycisk, klikasz go 2x i wpisujesz kod: ActiveCell.Value = Now Masz też skróty klawiszowe: CTRL+; wstawia datę, CTRL+SHIFT+; - czas. Data i czas to kombinacja powyższych. Możesz też stworzyć moduł Public Sub WstawCzas() ActiveCell.Value = Now End Sub i przypisać do niego klawisz skrótu (makra->opcje)
w przykładzie zeszyt3 [syntax=vb]Sub Wstawianie_wierszy() Dim i As Long, OstWrs As Long OstWrs = Cells(Rows.Count, 1).End(xlUp).Row 'ile wierszy Application.ScreenUpdating = False For i = OstWrs To 2 Step -1 If Cells(i, 1) <> Cells(i - 1, 1) Then Rows(i).Insert Next i Application.ScreenUpdating = True End Sub[/syntax] A tu kod z nazwą - ale nie...
To nie są ActiveX, więc nic z tego. A nie wystarczy Ci takie szybkie wstawianie na skróty: Ctrl + : spacja Ctrl + Shift + : Wszystko "ciurkiem" w komórce...
Witam, Podaję makro: Sub Logoeps() ' Logoeps Makro ' Option Explicit Dim x As Double Dim y As Double Dim obraz As String Dim kom As Range Dim fd As Object Set fd = Application.FileDialog(msoFileDialogOpen... With fd .InitialFileName = ActiveWorkbook.path & "\" & Range("M68") .AllowMultiSelect = False .Filters.Clear .Filters.Add "Picture Files", "*.png;...
Napisałeś pętlę nieskończoną. Nie do końca łapię co chcesz zrobić. Może wystarczy licznik pętli przesunąć poza gałąź If Do Until ActiveSheet.Range("A" & i) = "" Or ActiveSheet.Range("A" & i + 1) = "" If Range("A" & i).Value = 37258 Then Range("A" & i + 1).EntireRow.Insert...
Witam! Bardzo proszę o pomoc, mam następujący problem chciałbym aby makro wstawiało pusty wiersz po określonej liczbie w moim przypadku chodzi aby wiersz pusty był wstawiany przed ostatnią liczbą mniejszą od 1 000 000 (wartości zawsze posortowane są malejąco) np mam taki ciąg: a 6 541 237 b 3 214 578 c 1 002 478 tutaj makro wstawia pusty wiersz d 987...
Witaj [syntax=vb] Sub InsSubtot() Dim bs As Range Set bs = ThisWorkbook.Sheets(1).Cells Dim r&, rp& ow = bs(Rows.Count, 8).End(xlUp).Row r = 2: rp = 2 While bs(r, 8) <> Empty r = r + 1 If bs(r, 8) <> bs(r - 1, 8) Then bs.Rows(r).Insert bs(r, 5) = "SUMA" bs(r, 6) = Application.Sum(Range(bs(rp, 6), bs(r - 1, 6))) bs(r, 5).Resize(1,...
Może więc takie rozwiązanie jak w załączniku? Menu kontekstowe PPM jest zablokowane, ale jeśli nawet ktoś je wywoła, to nie może wykorzystać wklejania: http://obrazki.elektroda.pl/7679986700_1... Na wstążce zablokowane są funkcje przycisków: http://obrazki.elektroda.pl/8622171000_1... Cały czas jednak mam wrażenie, że takie całkowite...
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...
Moja propozycja: jedna para przycisków +/- i przypisane do nich makr: [syntax=vb]Sub wstaw() Rows(ActiveCell.Row + 1).Insert shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Cells(ActiveCell.Offset(1, 0).Row, "H").FormulaR1C1 = "=R[-1]C" End Sub[/syntax] i [syntax=vb]Sub usuń() Rows(ActiveCell.Row).Delete shift:=xlUp End Sub[/syntax] Przed przyciśnięciem...
Na razie dziękuję za pomoc. Pozniej sprawdzę makro
Witam [syntax=vbscript]Sub zamianki() Dim kom As Excel.Range Application.ScreenUpdating = False With Sheets("L-ki") For Each kom In .Range("c3:c70") If kom.Value <> "" Then Sheets("R-ki").Cells(kom.Row, "E") = Range("C" & kom.Row).Value End If Next kom End With Application.ScreenUpdating = True End Sub[/syntax]
Temat do zamknięcia, Maciej rozwiązał moją zagadkę :) Bardzo dziękuję!! Makro działa świetnie, na pewno zaoszczędzi mi wiele monotonnej pracy.
Druga część warunku pętli to przerwanie w razie powtórnego uruchomienia. Wiersz(e) należy wstawić o jeden niżej (Range("A" & i + 1).EntireRow.Insert) oraz (i = i + how_many + 1) Sub rows_influx() Dim i As Long i = 2 Do Until ActiveSheet.Range("A" & i) = "" Or ActiveSheet.Range("A" & i + 1) = ""...
Makro musiało Te makro to właśnie wstawianie 'wyszukaj.pionowo'
Przecież pod linkiem jest składnia. Cytuję przykład dodania arkusza przed obecnie aktywnym: [syntax=vbscript]ActiveWorkbook.Sheets.A... Before:=Worksheets(Worksheets.Count) [/syntax]
W tej wersji wybiera się wszystkie pliki do importu za jednym razem. Prościej się chyba nie da. (at)maciejgonet Widzę, że używasz 365. Ja mam dostęp tylko do wersji darmowej A1 i tutaj nie widzę wcale możliwości użycia makr... https://obrazki.elektroda.pl/4569294400_... Poprosiłem kolegę, który ma 365 i makro działa poprawnie. https://obrazki.elektroda.pl/3843900100_...
Wróżąc z fusów wróżę, że ta propozycja nie doprowadzi do postępu. Klawisz Enter nie ma tu znaczenia. Sprawdzałem, że jeśli makro wstawia wartość do komórki zdarzenie Change jest generowane i godzina się pojawia, choć nie jest używany żaden klawisz.
Wygląda OK. Dopisz tylko wstawianie czasu: [syntax=vbscript]Sub cyk() Calculate Application.OnTime Now + TimeValue("00:00:01"), "cyk" Range("G2")=Format(Time, "hh:mm:ss") End Sub[/syntax]
Dziękuję za podpowiedz ja mam u siebie takie macro: [syntax=vbscript]Sub Drukowanie() ' ' Drukowanie Makro ' Sheets("WNIOSEK O WYPŁATĘ").Select Range("A1:BS45").Select Selection.PrintOut Copies:=1, Collate:=True Sheets("FORMULARZ").Select Sheets("Polecenie").Select Range("A1:AX68").Select Selection.PrintOut Copies:=1, Collate:=True Sheets("FORMULARZ").Select...
Ten skrypt też widziałem To proszę wskazać źródło - tego mojego kodu :D chciałbym to zrobić bardziej profesjonalnie Z dostępnych w Internecie kodów proponuję przeanalizować kod szuszana [url=https://www.excelforum.pl/postlink/... , który jest bardzo rozbudowany (ponad dwudziestu kandydatów na sieroty) :ok: ale mechanizm jest identyczny...
[syntax=vbscript]Sub Naglowki() If Application.CountIf(Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row), [A1]) > 1 Then Exit Sub w = 2 While Cells(w, 1) <> "" n = w + 1 If Cells(n, 1) <> Cells(w, 1) And Cells(n, 1) <> "" Then Rows(n).Insert Range("A1:E1").Copy Cells(n, 1) w = w + 2 End If w = w + 1 Wend End Sub [/syntax]
Obawiam się, że musisz napisać makro w VBA.
Cześć, chciałbym się podłączyć pod temat chyba z podobnym problemem. Posiadam arkusz excel gdzie osoba trzecia będzie wprowadzać nowe pozycje (wiersze) i uzupełniała do każdej pozycje dane w kolumnach. Każdy wiersz posiada 10 kolumn z czego kolumny 2-3 (trzy) posiadają skomplikowane formuły dot. auto-uzupełnienia. Excel jest tak zrobiony, że jak ta...
Po pierwsze dzięki za szybką reakcję i pomoc. Aczkolwiek makro nie działa wg mojej instrukcji powyżej. W twoim makro kopiuje i rozdziela same ścieżki, czyli tylko kolumne T. A powinno kopiować wszystkie kolumny, czyli cała strukture tabeli.
Witam potrzebuje kilku porad odnośnie excela 1. Formułę lub makro do automatycznego wstawiania formuły przy kopiowaniu arkusza. Przykład: w arkuszu2 w polu B2 jest formuła =DANE!H5 czyli przenosi mi wartość z arkusza DANE pola H5 i teraz przy kopiowaniu arkusza2 i zmianie nazwy na arkusz3 chce żeby w polu B2 była formuła =DANE!H6 itd. 2. formułę lub...
makro wstawianie danych makro wstawianie wierszy makro wstawianie pliku
paliwa freelander audio telewizor xiaomi nawiew rezystor
suzuki burgman an400 bateria milwaukee
Chrysler Grand Voyager BCM – demontaż sterownika body, lokalizacja, procedura, generacje Mercedes Actros 2022 – brak obrazu na wyświetlaczach kokpitu, usterka MBUX, bezpieczniki F273/F281