W kodzie skoroszytu [syntax=vb]Private Sub Workbook_Open() Dim szukany As Worksheet y = CStr(Date) For Each szukany In ThisWorkbook.Worksheets With szukany If CStr(.Range("A1")) = y Then .Activate Exit Sub End If End With Next szukany MsgBox ("Nie ma") End Sub [/syntax]
a co z wierszem 65538 ?
Najprościej zastosować Inputbox. x = InputBox("Podaj Nr wiersza", "Inputbox1") y = InputBox("Podaj Nr kolumny", "Inputbox2")
Myślałam, że można to zapisać jakoś przy użyciu activecell, że gdy użytkownik zaznaczy dowolne dwie komórki to uzyska wynik, bez użycia inputbox.
Jest X=InputBox()
Witam Szybko ograniczymy inputboxa do samych liczb używając [syntax=vbscript]p1 = Application.InputBox("Liczba 1", , , , , , , 1) p2 = Application.InputBox("Liczba 2", , , , , , , 1)[/syntax]
Skoro ma być w VBA... Przykład z tablicą i... InputBox'em ;) [syntax=vb]Sub aver() tekst = InputBox("Wpisz liczby oddzielając średnikiem", "Obliczanie średniej") tekst = Replace(tekst, " ", "") 'wyrzucamy spacje tekst = Replace(tekst, ":", ";") 'mogło się komuś omsknąć tekst = Replace(tekst, ".", ",") 'to sie często zdarza tablica = Split(tekst, ";")...
W takim przypadku potrzebne są dwie pętle. Pierwsza For dla wszystkich arkuszy, których nazwa <>"RAPORT", wewnętrzna Do While...Loop z licznikiem dla Nr wiersza i instrukcją porównująca zawartość komórki, Np: If Instr(Cells(wiersz, 5).text, szukany_fragment)>0 Then i tu kopiowanie. Szukaną można pobrać przez InputBox.
Witam To fragment kodu z ktróym mam problem i szukam pomocy Do taj pory kod sprawdzał czy w komórce jest wartość i petla działała tak długo jak zakres. Jednak w wypadku kiedy zamiast zakresu dam InputBox czyli "y" petla wstawia w okno przegladarki tekst który jest cały czas wpisany w okno i nie przerywa petli mimo ze w kolumnie B nie ma wiecej wartości....
Ciekawy pomysł :) Realizacja nie będzie raczej łatwa. Nie będę zanudzać formularzami użytkownika, więc od razu zapytam: A co z tymi nazwiskami po uzupełnieniu tabelki? Może skupić się na miejscu docelowym (InputBox, Split)?
Witam, Może ktoś pomoże z taką zagwozdką związaną z autofiltrem: Chciałbym za pomocą funkcji inputbox działającą w pętli wprowadzać kolejne kryteria autofiltra i na koniec uruchomić jednokolumnowy autofiltr z tymi kryteriami. Kod wygenerowany rejestratorem: ActiveSheet.Range("A4:O19... Field:=2, Criteria1:=Array("038/WD", "143/WD", "450/WD",...
Najprawdopodobniej wchodzą dwa slash'e. Najlepiej dopisywać warunkowo. Przy okazji: przypisujesz tę samą wartość do dwóch zmiennych (nieszkodliwa nadmiarowość)[syntax=vb] ImgFldr = InputBox(AnsDirPrompt, "Powitanie", "C:\") 'ImgFldr = AnsDir CurrentFile = Dir(ImgFldr & IIf(Right(ImgFldr, 1) = "\", "", "\"))[/syntax]
Sposobów na otwarcie pliku w VBA jest wiele. Można użyć: [syntax=vbnet]Pthnm = ActiveWorkbook.Path Workbooks.Open Pthnm & "\TMP.xlsx"[/syntax] a nazwę pliku podać przez InputBox lub pobrać z jakiejś komórki w arkuszu. Inny sposób to użycie FileDialog i wybranie pliku przy jego pomocy. Wybór należy do Ciebie.
[syntax=vbscript]Private Sub Workbook_Open() For x = 2 To Sheets.Count Sheets(x).Visible = False Next a = InputBox("Podaj hasło:") For x = 2 To Sheets.Count If Sheets(x).Range("AA1") = a Then Sheets(x).Visible = True Next End Sub[/syntax]
Witam, Przeszukałem forum, ale nie znalazłem rozwiązania. jestem nowym użytkownikiem VBA i nigdy wcześneij nie programowałem, ale skonstruowalem sobie program do faktur, wcześniej już ktos pomagał mi wyedytowac poprawnie kod, moze i tym razem ktoś oświeci mnie na przyszłość. Mam plik faktury, w którym po kliknięciu jedngo z przycisków, kolejno wyskakują...
Jeśli nie miałeś do czynienia z formularzami, to najprościej zamknąć InputBox w pętli w Thisworkbook, przy zdarzeniu Open. Coś jak[syntax=vb]With Sheets("NazwaArkusza") For i = to 10 .Cells(i, 2)= Inputbox ("Wpisz wartość dla komórki B" & i) Next .activate End With[/syntax]Dograj sobie rejestratorem polecenie drukowania, lub po aktywowaniu arkusza naciśnij...
) chce porównac jak czesto pada dana kombinacja liczb Problem był nie tyle o Lotto, zarówno o tym, gdzie makro zobaczy dana kombinacja liczb. (InputBox, zakres komorek, czyli inne) Nie będzie to sztywno 6, 19, 3 , 22
Jeżeli chodzi o sumowanie cyfr w liczbie to zostaje tylko makro, moge troszkę podpowiedzieć: Sub main() Dim c, x As Integer x = InputBox("") While x <> 0 c = c + x Mod 10 x = x \ 10 Wend MsgBox(c) End Sub
[syntax=vb]Sub zapisz1() numer = InputBox("Podaj numer kolejny") NewFilename = numer & "-2015 " & ".xls" ActiveWorkbook.SaveAs Filename:=NewFilename End Sub[/syntax] lub [syntax=vb]Sub zapisz2() ActiveWorkbook.SaveAs Filename:="FORMULARZE" & ".xls" End Sub[/syntax]
Najprościej jak tylko możliwe Dim p As Variant p = "a" Do While IsNumeric(p) = False p = InputBox("Podaj kapitał początkowy:") If p = "" Then Exit Sub If IsNumeric(p) = True Then Exit Do MsgBox "Zle dane" Loop
(...) przesunięcia zakresu DataRangeOBAYield o 7 wierszy w prawo dla każdego z dwóch zakresów (...) Chodzi o wiersze w dół, czy kolumny w prawo? Można zastosować InputBox, gdzie wpisywane będzie przesunięcie: 0 - B1:H1,B31:H31 1 - o siedem wierszy/kolumn w z góry upatrzoną stronę itd, jeśli jest taka potrzeba Zmienną obiektową masz zadeklarowaną......
To może tak: [syntax=vbnet][/syntax] Sub Skanuj() ActiveCell = InputBox("tu coś wpisz") ActiveCell.Offset(1,0).Select End Sub [/syntax] To najprostsza wersja. Przed pierwszym skanowaniem ustawiasz kursor gdzie trzeba a potem miejsce będzie zmieniało się automatycznie. Chyba, że potrafimy jakoś określić to miejsca, to niczego nie będziesz musiał robić...
Spróbuj z InputBox'em: [syntax=vb]w = 14 ile = Int(InputBox("Ile?", "Wpisz liczbę całkowitą", 3)) If ile < 1 Then Exit Sub Application.ScreenUpdating = False Range("A16:V29").Copy For i = 1 To ile Range("A" & 16 + w).Select ActiveSheet.Paste w = w + w Next Application.CutCopyMode = False Application.ScreenUpdating = True[/syntax]
Najprościej byłoby użyć zwykłe InputBox. Bardziej "eleganckie" rozwiązanie z formularzem w załączniku.
Excel wyświetlał MsgBox To się nazywa InputBox. W załączniku numerowanie FV.
A nie powinno być: a = InputBox ("podaj ilość wierszy")
Witam, Dopiero uczę się VBA i mam taki problem. Potrzebuję napisać makro, które dla pewnego zakresu dat (wskazanego przez użytkownika poprzez inputbox) będzie: a) sumować dane b) wyliczać średnią z tych danych c) zaktualizuje wykres na bazie tych danych (co miesiąc nowy wykres) Dla przykładu w kol. A mam daty a w kolumnie B kwoty, na których chcę wykonać...
DIM skad_zaczac AS range skad_zaczac = InputBox("od którego pola zacząć?")
[syntax=vb] Sub Generuj() Dim i As Integer Sheets("Liczby").Select Randomize For i = 1 To 4 Cells(2, i + 1) = Int(Rnd() * 30) + 15 'B2:E2 Next End Sub Sub CommandButton2_Click() Call Generuj Range("F20").FormulaLocal = "=SUMA(B2:E2)" Call Mnozenie MsgBox "Oto suma: " & Range("F20") End Sub Sub Mnozenie() Dim Mnoznik As Single, i As Integer Mnoznik =...
Zdaje się, że nie wpisałeś path (koniecznie w cudzysłowach) w linii [syntax=vb]Set dirObj = MergeObj.Getfolder("tu ścieżka do plików, filedialog lub inputbox")[/syntax]
Fajna Szkoła może by pójść tam na uzupełniające ...hmmm ... wracając do tematu Sub iloczyn() Dim iloczyn As Integer liczba = InputBox("podaj liczbę") ilosc = Len(liczba) iloczyn = 1 For i = 1 To ilosc cyfra = Mid(liczba, i, 1) iloczyn = iloczyn * cyfra Next i MsgBox iloczyn End Sub a po co jest to k ? żeby przez...
Yogi (przypominasz mi dzieciństwo) ;). Nie pamiętam, czy był to 'Zwierzyniec', czy też 'Ekran z bratkiem'. Ale autor napisał: potrzebuję makro A do Autora. Może ten kod będzie wygodniejszy (jest bez obsługi błędów, sam się pobaw): [syntax=vb]Sub Przenies() Dim d As Date, p As Date, k As Date ow = Cells(Rows.Count, "B").End(xlUp).Row y = Sheets("Arkusz2").Cells(Rows.Count,...
To samo robiący kod, tyle że krótszy. [syntax=vbscript]Sub Drukowanie() i = InputBox("Numer wiersza") Set a = ActiveSheet Set b = Workbooks.Open(Environ("userprofile") & "\Desktop\Zeszyt2.xlsm") w = 2 For k = 1 To 5 a.Cells(i, k).Copy b.Sheets(1).Cells(w, k + 1) w = w + 1 Next ActiveSheet.PrintOut b.Close True End Sub [/syntax] Wklejam tutaj kod bo...
Spróbuj tak :D [syntax=vbscript]Sub m2() Dim s As Double t = InputBox("Podaj głębokość maksymalną [m]") Range("A2").Value = "Głębokość maksymalna:" Range("A2").EntireColumn.AutoFit Range("B2").Value = t x = 0 For s = 0 To t Step 0.2 Range("B6").Offset(x, 0).Value = s x = x + 1 Next s End Sub[/syntax]
A czy plik, którego nazwę podałeś w InputBox znajduje się w tym samym katalogu w którym jest arkusz z którego uruchamiasz makro?
[syntax=vbscript]Sub Zawiera() Sheets("Arkusz1").Select a = InputBox("Podaj tekst do szukania: ", "Wyszukaj") ow = Cells(Rows.Count, "A").End(xlUp).Row y = 1 For x = 1 To ow If InStr(1, Cells(x, 2), a) > 0 Then Range(Cells(x, 1), Cells(x, 2)).Copy Sheets("Arkusz2").Range("A" & y) y = y + 1 End If Next End Sub [/syntax] Poniżej bez rozróżniania wielkości...
[syntax=vbscript]Sub ZnajdzDodaj() Set a1 = Sheets("Arkusz1") Set a2 = Sheets("Arkusz2") a = InputBox("Znajdź :", "Szukanie") owa2 = a2.Cells(Rows.Count, "A").End(xlUp).Row If Application.CountIf(a2.Range("A1:A" & owa2), a) > 0 Then MsgBox a & " istnieje już w bazie." Exit Sub End If owa1 = a1.Cells(Rows.Count, "H").End(xlUp).Row For x = 1 To owa1 If...
Zamiast Range("A1") można użyć komórki zaznaczonej (Selection), a po wpisaniu danych przesunąć zaznaczenie np. Selection.Offset(1,0).Select. Jest to oczywiście tylko jedna z możliwości. Przykład załączony, ale trzeba go dopasować, ja użyłem funkcji InputBox, bo podany fragment kodu jest wyrwany z kontekstu.
Hmm. Ciekawe. To skorzystaj z inputa. np.: plik = InputBox("PODAJ ŚCIEŻKĘ DO PLIKU") lub tak jak chciałeś wcześniej z komórki.
Za mało danych, np. czy odległości będą posortowane (malejąco, rosnąco), czy też nie, czy podawać w wyniku tylko jedno sparowanie odległości-miasta, czy też wiele, itd. Dziekuje za odpowiedz. Nie, odleglosci nie sa posortowane. Miasta sa rowniez wpisane losowo. W wyniku chcialabym zeby kazde miasta z dana odlegloscia wyswietlaly sie osobno, tj.Wroclaw-Berlin...
Wygląda na to, że słabo sprecyzowałem mój problem. Chodzi mi o to,że w momencie, gdy wyświetlona jest formatka z textbox'ami to nie mogę przesunąć arkusz, aby wyszukać dane do wpisania w te textbox'y. Podobnie mam w innym makro. Uruchamiam makro, pojawia się inputbox z poleceniem wpisania danych z arkusza. Jeśli akurat jestem w innej części arkusz,...
Obszar = InputBox("Podaj obszar kopiowania danych", "Obszar danych", "A1:K10") Przed petlą For
Jeśli jednocześnie to For ark = 1 To 2 With Sheets(ark) For i = .Cells(65536, "a").End(xlUp).Row To 2 Step -1 If .Cells(i, "a").Value = "" Then .Rows(i).Delete shift:=xlUp End If Next End With Next Jeśli uruchamiasz w pierwszym a usuwać ma w drugim to With Sheets(2) For...
Ja bym zrobił tak, że po wpisaniu nazwy urządzenia wyskakuje okno gdzie podajsz ilość pobrania lub oddania. With Target If .Address(0, 0) = "E2" Then Application.EnableEvents = False ilosc = InputBox("Ile pobrano?") If .Value <> Empty Then On Error Resume Next wrs = Columns(1).Find(what:=.Value, lookat:=xlWhole).Row Err.Clear If wrs <> Empty...
Witam [syntax=vb] Sub podzial_pliku() Dim kol As String Dim wiersz As Integer Dim nazwa As String Dim ark As Worksheet kol = InputBox("Podaj litere kolumny na podstawie ktorej nastapi podzial plikow", "Pytanie") wiersz = InputBox("Podaj numer wiersza od ktorego zacznie sie podzial plikow", "Pytanie") Range(kol & wiersz).Select Set ark = ActiveSheet...
Najłatwiej: podstawić zmienne pobrane z InputBox'ów. Tu masz wybór: -przypisanie ich przed pętlą 'For k' - dla wszystkich dni równo (prościej) -przypisanie wewnątrz - indywidualnie dla każdego dnia. Np [syntax=vb]Sub Ele() For k = 0 To 1 'dzis =Date - k 'nadmiar Data = Date - k a = InputBox("od -liczba 0-23", "dla " & Format(Data, "dddd") & " " & Data)...
ale niestety wsztstkie dane musza być pisane w ciągu a program sam musi rozdzielac dane. Np. ul./ al./ ulica / aleja daty wpisane w innych formatach itp. Tak jak pisałem w takim przypadku pokombinuj z funkcjami InStr, Mid, Len aby rozdzielić ciąg znaków po wybranych separatorach. Najlepiej przypisz sobie to co podzielisz do zmiennych. Później przy...
Co prawda zrobiłem macro i wstawia ono komentarz ale to jest już "gotowy" komentarz z tekstem albo pusty, a chciałbym żeby po naciśnięciu przycisku można było wpisywać komentarz. Możesz też wykorzystać inputbox [syntax=vbnet]ActiveCell.AddComment ActiveCell.Comment.Text Text:="Bob:" & Chr(10) & Application.InputBox("podaj tekst", Type:=2)[/syntax]
Z MsgBox można wybrać tylko Tak, Nie lub Anulować. Możliwość wprowadzenia jest w InputBox, ale trzeba wprowadzać ręcznie, możliwy błąd. Z RefEdìt można określić kursorem arkusza i komórki docelowej.
Owszem to filtrowanie danych ale w żadnym wypadku nie powinno być powiązane z auto-filtrem, tym bardziej jak masz excel 2003 i poniżej. Tu masz kod. Tłumaczyć? [syntax=vb]Sub Makro1() Dim ostWrs As Long, x As Long Dim tekst As String, szukane As String ostWrs = Range("B" & Rows.Count).End(xlUp).Row tekst = InputBox("Podaj szukany ciąg", "Podaj szukaną")...
[syntax=vbnet]Sub Dodaj() Cells(Cells(Rows.Count, "A").End(xlUp).Row, 1) = InputBox("Podaj dane:", "UWAGA") End Sub[/syntax]
Chyba łatwiej zrobić dwuklik na wierszu, z którego chcesz kopiować. Równocześnie uruchamiasz makro i wskazujesz wiersz. Możesz też się upewnić, czy to właściwy wiersz. Oczywiście można też wstawić tam InputBox, tylko wtedy jak chcesz uruchamiać to makro? Jeśli chodzi o moją propozycję, to komórki docelowe wypisujesz po kolei jako adresy obiektu Range:...
W ostateczności (syntax wybierz: Visual Basic) [syntax=vb]For i = 0 To InputBox("wpisz liczbę")[/syntax] lub podstaw z komórki (po wymnożeniu *10, jeśli step 0.1)
Może spróbuj przez podstawianie formuł. Makro przetestowałem na arkuszu "Zmiana N". Jeśli to jest to, to masz już z górki.[syntax=vb]Sub Proba() For j = 6 To 10 Step 2 zmF = InStr(Cells(3, j).Formula, "KW") zmF = Mid(Cells(3, j).Formula, zmF, 4) zmR = InputBox("W kolumnie " & j & " " & zmF & " zamienić na:", "podaj symbol") If zmR <>...
abym mógł nazwę pliku zmodyfikować na własną? Można np. tak :idea: nazwa :D
Ja to widzę jakoś tak (zakładam, że komórka B1 to numer i jest złożony tylko z cyferek, wydruk na drukarkę domyślną bez pytania, strony od 1 do 1): [syntax=vb]Sub Makro1() Dim x As Integer x = Val(InputBox("Podaj liczbę kopii", "Liczba kopii", 1)) If x = 0 Then Exit Sub While x > 0 ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1 Range("B1").Value...
gdyż mam makro które tworzy mi CSV Napisałem na szybko takie coś: [syntax=vb] ''' <summary> ''' Zapisuje bierzący arkusz do pliku CSV ''' </summary> Sub SaveCSV() Dim R As Range Dim cmax As Integer Dim rmax As Integer Dim srow As String Dim fname As String cmax = Excel.ActiveSheet.UsedRange.Columns.Coun... rmax = Excel.ActiveSheet.UsedRange.Rows.Count.....
: ) ... a z właściwej strony tam zaglądasz ... : ) ? ... np. z ustawieniami "na sztywno": [syntax=vbscript]Sub abc() Dim msc, mscS$, schmt$, otwarty As Object msc = Trim(InputBox("Wprowadź numer miesiąca z przedziału 1-12", "Podaj miesiąc", "1")) msc = Abs(Fix(Val(msc))) If msc < 1 Or msc > 12 Then Exit Sub mscS = Choose(msc, "Styczeń", "Luty",...
Tak jak już napisał Maciej Gonet bez załącznika to trochę wróżenie z fusów, ale spróbuj dostosować do Twojego pliku taki kod: [syntax=vb]Sub TrzyOstatnieDni() Dim rRng As Range Dim lLstRw& Dim sData$ Dim dData As Date sData = InputBox("Podaj Datę w formacie dd/mm/rrrr):") sData = Format(sData, "dd/mm/yyyy") dData = CDate(sData) lLstRw = Cells(Rows.Count,...
Tu masz ciastko[syntax=vb]Sub popraw_nazwe() Dim nazw As Range Set nazw = Sheets("baza").Range("A:B") With Sheets("tabela") For r = 2 To Application.CountA(.Range("A:A")) zla = .Cells(r, "A") If Application.CountIf(nazw, zla) = 0 Then dobra = InputBox(zla & " nie zostal odnaleziony" _ & vbCr & " w bazie danych", "Wpisz odpowiednia wartosc", "USD") r...
Spróbuj to [syntax=vb] Sub Porzadkuj() x = InputBox("Podaj datu", "Data przyporziadkowania", Date) If Not IsDate(x) Then Exit Sub x = DateValue(x) Dim nazwy As Range, d As Range With Sheets("pivot") Set nazwy = .Rows(3) Set d = .Cells.Find(x, LookIn:=xlValues) If d Is Nothing Then Exit Sub Set d = d.EntireRow.Cells For Each sh In ThisWorkbook.Sheets...
Pisząc w skrócie, musiałoby być coś takiego: [syntax=vbscript]Dim val_ As Single, rng1 As String, rng2 As String val_ = InputBox("0,4 lub 0,6", "wpisz wartość mnoznika") rng1 = InputBox("wartość1", "wpisz adres komórki 1") rng2 = InputBox("wartość2", "wpisz adres komórki 2") If Range(rng1) > 0 And Range(rng2) > 1 Then ActiveCell = (Range(rng1) - Range(rng2)...
[syntax=vbscript]Sub Cos() a = InputBox("Podaj numer: ", "Numerki") If Not IsNumeric(a) Then MsgBox "Oczekiwano numer." Exit Sub End If ow = Sheets("111").Cells(Rows.Count, "A").End(xlUp).Row m = Application.Match(CDbl(a), Sheets("111").Range("A1:A" & ow), 1) If Not IsError(m) Then b = Sheets("111").Range("B" & m) Sheets(b).Range("A1:E20").PrintOut...
Po mojemu powinno działać coś takiego (nie testowane)[syntax=vb]Sub Przycisk1_Kliknięcie() Dim path1 As String, path2 As String, plik As String Dim folder As Object, pfolder As Object Dim dta1 As Date, dta2 As Date, nazwaMin As String, nazwaMax As String Application.ScreenUpdating = False path2 = "\\Serwer\test" Set folder = CreateObject("Scripting.FileSystemObject...
Dzięki PRL rs.Open SQL, cn gdy baza jest chroniona hasłem otrzymuję "Run-time error -2147217843 Automation error" Po zdjęciu hasła z bazy jest OK (nawet bez modyfikacji cn). No i jeszcze jeden problem - Excel blokuje dostęp do pliku accdb Dodano po 3 Da się, zwykły InputBox O! I hasło zna tylko jeden kierownik :-)
Nie pisałeś wcześniej, że będziesz latał z datą po arkuszu jak "przedstawiciel mniejszości narodowej po pustym sklepie. Użyj drugiej procedury z mojego postu. Do uzupełnienia daty możesz wykorzystać którąkolwiek komórkę arkusza wpisując do niej to co jest w cudzysłowie. Można też wykorzystać InputBox. Tak na marginesie to pomysł z 31 lutym to chyba...
jak napisać program obliczający sumę 1+1/2 + 1/3 +1/4.... +1/n dla n podanego w polu edycyjnym , wynik pokaż w msg box lub label . Program ma być napisany w języku VBA Oczywiście, poniżej znajdziesz przykładowy kod napisany w VBA, który oblicza sumę ciągu harmonijnego 1 + 1/2 + 1/3 + ... + 1/n, gdzie n jest liczbą podaną przez użytkownika. Kod ten...
Tak i to na kilka sposobów. Najprostsze, byłoby zadeklarowanie zmiennej globalnej typu Boolean, warunkowe uruchomianie procedury i makro z inputbox'em zmieniające stan zmiennej.
No, trochę zakręcone ;) 1. Dla pojedynczej komórki nie stosuj pętli For . Wystarczy Range () 2. Każda pętla (jeśli już) ma swój początek i koniec. Zjadłaś Next 3. Do porównania potrzebny jest wynik działania: If liczba Mod liczba = 0 Then Dlaczego przy Worksheet_Calculate ? Prościej byłoby przy Worksheet_Change gdzie warunkiem będzie Target.Address(0,0)="A1"...
Przepraszam, ale co to jest? (zaznaczone na żółto) http://obrazki.elektroda.pl/3908026800_1... sprawdź to: [syntax=vb]Sub filtr_listy() szukana = InputBox("Wpisz ciąg znaków którego szukasz") Selection.AutoFilter Field:=1, Criteria1:="=*" & szukana & "*", Operator:=xlAnd End Sub[/syntax]
Najprościej wykorzystać MsgBox i InputBox. Procedura wg schematu: If MsgBox("czy jest to kolejny protokól z serii", vbQuestion + vbYesNo) = vbYes Then Cells(wiersz, kolumna) = WorksheetFunction.Max(zakres) + 1 Else Range(zakres).Find(What:... podać Nr protokołu"), LookAt:=xlWhole).Select...
Usiadłem (wreszcie) nad tym i tak sobie myślę: Jeśli pierwszy dzień miesiąca wypada w środę, to w systemie 5/1 dzień wolny ma brygada, która pracowała w ostatni czwartek poprzedniego miesiąca. Nie ma tu stałych, więc po czym w takim razie biedny Excel ma się orientować? Systemu 6/2 nawet nie próbuję analizować :) Należałoby mu jakoś (InputBox, wartość...
Nie próbujesz nawet realizować sugerowanych najprostszych rozwiązań :cunning: Wszyscy, którzy mają jakiekolwiek doświadczenie z VBA doskonale wiedzą co to znaczy nagrywania makra :D Chodzi o utworzenie samodzielne np takiego makra: [syntax=vbscript]Sub Makro1() ' ' Makro1 Makro ' ' Klawisz skrótu: Ctrl+s ' altStr = InputBox("Fraza do wymiany?", "Zamień...
no własnie. według mnie mozna by zrobic przycisk wyszukaj i w tym przycisku inputbox i zeby w arkuszu wyszukiwało to co sie wprowadza do inputboxa, a wkolejnym inputboxie wpisac wartośc i ona sie wpisuje w tym wierszu co wczesniej znalazło wynik tyle ze kilka kolumn dalej. tylko nie moge sobie z tym poradzic jak napisac kod
[syntax=vb]Sub wyszuk() Set bs = ActiveSheet.UsedRange.Offset(1) slowo = InputBox("Slowo do wyszukiwania", "Szukaj") If slowo <> "" Then For Each r In bs.Rows r.Hidden = r.EntireRow.Find(slowo) Is Nothing Next End If End Sub [/syntax] P.S. Jurowska?
Rozdziel ścieżkę i nazwy plików. Argumentem metody Open jest string, więc możesz podstawić ze zmiennych. Np Workbooks.Open sciezka & "\" & plik Gdzie wartość dla "sciezka" pobierana jest z komórki, inputbox'a, browsera, etc.
Czy należy zmienić coś ...? No oczywiście zmienić :D , ale nie w tym miejscu, które wskazujesz :not: Można np tak (przykładowo dla przycisku 1): [syntax=vbscript]Sub e1() With Sheets("Dane1") Lr = .Cells(.Rows.Count, "A").End(xlUp).Row + 1 If Lr <= 20 Then .Cells(Lr, 1) = Cells(2, 3) .Cells(Lr, 2) = InputBox("Podaj ilość") Else MsgBox "Przekroczona...
Witaj [syntax=vb]Sub kopije() r = Val(Trim(InputBox("Podaj numer wiersza do skopiowania"))) If r = 0 Then Exit Sub Sheets(1).Range("A" & r & ", B" & r & ",D" & r & ",G" & r).Copy Sheets(2).Range("A1") End Sub [/syntax]
Chciałbym też dodać do tego makra zasadę, aby akceptowało przy wyszukiwaniu max 10 znaków. Jak wpiszesz więcej niż 10 to dostaniesz komunikat.(zrezygnowałem z jednego if-a bo anulowanie inputboxa przejmie xFRg) [syntax=vbscript]Sub FindRange() 'UpdatebyArekD2022 Dim xRg As Range Dim xFRg As Range Dim xStrAddress As String Dim xVrt As Variant xVrt =...
[syntax=vbscript]Sub Data() ' ' Data Makro ' 10 myday = InputBox("Podaj dzień.") If myday <> "" Then If IsNumeric(myday) Then Selection.FormulaR1C1 = myday Else MsgBox "Nie podales dnia." GoTo 10 End If End If 20 mymonth = InputBox("Podaj miesiąc.") If myday <> "" Then If IsNumeric(mymonth) Then Selection.FormulaR1C1 = mymonth Else MsgBox...
Rzecz w tym, że nigdy nie będziesz pewien wyniku. Z InputBox'a pobierasz 01-12-2015, w arkuszu może być 12/1/2015, 12/01/2015, 1/12/2015, 01/12/2015. Który tekst (w obecnym formacie) odfiltrować? Pewnie wszystko (tylko czy odfiltrowaliśmy pierwszego grudnia, czy dwunastego stycznia?). Wartości w kolumnie D nie są datami, w rozumieniu Excel'a, a zwykłym...
"Nie działa" bo okienko inputbox'a pomimo tego że wpiszesz cyfry/liczbę zwraca ją jako tekst . Wstaw za kodem: W takim rozwiązaniu jeżeli liczbowa nazwa asortymentu będzie równa starej cenie to nazwa takiego asortymentu też zostanie zamieniona na nową cenę. edit: ----------------------------------------... Dla zasady poprawności kodu zmień w deklaracji...
Pewien jesteś, że to chciałeś powiedzieć? SUMA w logice to alternatywa czyli słowo 'lub', a iloczyn to koniunkcja czy 'i' Do tej pory jest tak zrobione że jest wpisana formuła SUMA WARUNKÓW kolumn X i Y żeby były dodawane wszystkie liczby z kolumny Z jeżeli oba warunki są spełnione. Chciałbym to tylko mieć w VBA żeby nie zmieniać przy każdej nowej...
np: [syntax=vba]Option Explicit Sub bbb() Dim w As Long Sheets("Historia_ZLEC").Select On Error Resume Next w = Columns(4).Find(What:="kierowca", LookAt:=xlWhole).Row On Error GoTo 0 If w = 0 Then MsgBox "Nie znaleziono", vbOKOnly, "Uwaga": Exit Sub If Cells(w, 6).Value = "NIE" Then Range(Cells(w, 4), Cells(w, 6)).Select Else MsgBox "Nie znaleziono",...
Witam, mam pewien problem, którego samodzielenie nie potrafie rozwiązać. Mam w arkuszu excela w jednym wierszu, w poszczególnych komórach daty, które odpowiadaja poszczególnym datą reprezentujacycm soboty, niedziele i swieta w danym roku kalendarzowym. W te dni pracuje pewna grupa pracowników. Pod każda data zaznaczam, czy pracownik pracował, czy tez...
Próbuje zrobić makro które po wprowadzeniu w inputbox dat od i dat do założy filtr na dane i zapisze go do PDF problem jest z filtrem. Po wprowadzeniu nie wyświetla żadnych danych mimo iż kryteria się wprowadzają, dopiero jak kliknę "ok". Dane się wyświetlają, poniżej kod: Dim data_Od As Date data_Od = InputBox("Podaj date od:") Dim data_do As Date...
Dzień dobry, mam poniższy kod: [syntax=vba]Sub m2() a = InputBox("Wpisz liczbe") b = InputBox("Wpisz druga liczbę") For s = 0 To a Range("A1").Offset(s, 0).Value = s Range("B1").Offset(s, 0).Value = b Next ActiveSheet.Shapes.AddChart2(240, xlXYScatterSmoothNoMarkers).Select ActiveChart.SetSourceData Source:=Range("Zadanie!$A$1:$B$6") ActiveChart.ChartStyle...
Z pierwszego: dim adres 'pobieranie scezki adres = InputBox ("Podaj sciezke", "Wprowadzenie danych") katalog = adres dim w ' Uruchomienie Excela set w = createobject("Excel.application") w.visible = w.Workbooks.add ' Utworzenie nowego dokumentu Set MyFiles = CreateObject("Scripting.FileSystemObject... Set Folder = MyFiles.GetFolder(katalog) Set WszystkiePliki...
Może InputBox? Np tak przeróbka makra wyżej[syntax=vb](...) On Error Resume Next wrs = InputBox("Podaj Nr wiersza początkowego", "Proszę wpisać liczbę", 6) max = InputBox("Podaj Nr wiersza końcowego", "Proszę wpisać liczbę") On Error GoTo 0 If wrs < 2 Then Exit Sub If wrs > max Then max = Rows.Count Do While Cells(wrs, 4) <> "" And wrs <=...
Witam, rozpoczynam przygodę z VBA. Mam plik z danymi, w kolumnie B znajduje się data (format ustawiony jako data krótka). Chciałbym wybierać zakres wyświetlanych danych w zależności od daty. Dane są sformatowane jako tabela "info". Wykorzystując poradę znajdującą się tutaj: http://www.elektroda.pl/rtvforum/topic22... Stworzyłem poniższy kod:...
Dzięki Clubs, Zrobiłem coś takiego ' Pokazanie okna do wprowadzanaia wartości Range("A2").Value = InputBox("Podaj datę paragonu") Range("B2").Value = InputBox("Podaj kwotę paragonu") Range("C2").Select KategorieWydatków.Show Range("D2").Value = InputBox("Wybierz podkategorię paragonu") Range("E2").Value = InputBox("Uwagi") W odpowiednim miejscu wyskakuje...
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...
[syntax=vbscript]dane = Application.InputBox("jakiś tekst" & Chr(10) & "Podaj zakres dat", "Wprowadzanie zakresu dat") [/syntax]
Czy można je blokować do edycji po wpisaniu danych lub odblokować jeżeli zajdzie taka potrzeba. Z tym pierwszym to żaden problem, wystarczy wykorzystać zdarzenie Worksheet_Change . Natomiast jak chcesz zrealizować odblokowanie? CheckBox w każdym wierszu? Trochę proszenie się o kłopoty. Chyba, że wszyscy solennie przyrzekną: "Nie będę usuwał wierszy"....
Witam. Czy ktoś mógłby mi wyjaśnić dlaczego poniższy program nie działa? [syntax=vb]Sub rentowność_obligacji() MsgBox "Program obliczający rentowność obligacji", vbOKOnly, "OBLIGACJE" a = InputBox("podaj wartość nominalną obligacji") b = InputBox("podaj żywotność obligacji w latach") c = InputBox("podaj wartość bieżącą obligacji") d = InputBox("podaj...
Hejka :) Czyli podywagowali wszyscy na temat (lub nie na temat) a odpowiedzi jak nie było tak nie ma :D Proponuję CI takie rozwiązanie... W ThisWorkbook w zdarzeniu open wrzuć ukrywanie/odkrywanie arkusza na podstawie loginu Windowsowego Twoich userów. To jest fajne pewne rozwiązanie, sam tego używam, nie muszą wtedy podawać żadnych haseł (masz taką...
Tak na szybko spróbuj : Sub Makro1() arkuszdane = InputBox("podaj nazwę arkusza z danymi") kol = CInt(InputBox("Podaj kolumne z danymi")) wier = CInt(InputBox("Podaj pierwszy wiersz z danymi")) ile = CInt(InputBox("Podaj ile jest wierszy z danymi"))...
Data, jak już wspomniał JacekCz, to bardzo krnąbrny element Excel'a. Dla pewności, zamiast InputBox'a, podstawiłbym kalendarz. Wtedy bez względu na ustawienia w systemie, w arkuszu wyląduje Ci data. Pozostaje tylko sformatować komórki "dla oka".
To zastosuj zwykłe dodawanie. Na pierwszej stronie Np w E1 wpisujesz Nr gwarancji (lub robi to zał. makro), na drugiej Np w E54 =E1+1, na następnej =E54+1 itd. W drugim arkuszu zapisuj sobie tylko aktualny numer, żeby nie zginąć lub użyj Sub Druknij2() ileStr = InputBox("Ile stron drukować? ", "Pytanko...") If ileStr...
A w czym problem? Wpisz w inputbox wartość w odp. formacie i powinno być OK. http://obrazki.elektroda.pl/6034864000_1... http://obrazki.elektroda.pl/3024346800_1...
excel inputbox inputbox excela kopiować excel excel
pompa wtryskowa czujnik obrotów pilot markizy pomiar rezystancja uziemić odgromowy
Rola bolca w ograniczniku emisji spalin DAF Położenie pinów LC14A: kontroler, inwerter, tłumik