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]
:arrow: adamas_nt Ale jeśli "dziura" jest wewnątrz A skąd się weźmie jak od komórki C3 dane wprowadzane są za pomocą InputBoxa?
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.
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",...
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...
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]
1. Zmienne te muszą być liczbami, np. musi być: kol_pocz = 1 wiersz_pocz = 1 kol_fine = 27 ' (27 jest nr kolumny "AA") wiersz_fine = 100 2. "ZZ" - nie ma takiej kolumny (excel 97). 3. Makro to dla dużych zakresów będzie liczyło bardzo długo (musi przejść wszystkie komórki) 4. Należy usunąć wywołanie okien INPUTBOX i zmiennych z nim związanych (lub poprzedzić...
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....
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ć...
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]
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 :-)
Wartość stała jest podana dla przykładu, na szybko napisałem stałą b. Chodzi mi o to żę gdy pętla uzupełni komórki do A10 (bo wpiszemy w inputbox 10) to żeby wykres obejmował do A10. Ale też że gdy wpiszemy w inputbox 3 to żeby wykres czerpał dane do A3 czyli ostatniego wiersza z liczbą. Wprowadzić potrzebną wartość zmienną (a,b lub inną) do zakresu...
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...
Najprościej: 1. Dołożyć pętlę z "gumką myszką" 2. Potraktować Offsetem z InputBox'a 2a. Jeśli zakres źródłowy jest ciągły, zamiast Array też można podstawić InputBox i w pkt.2 pytać o przesunięcie, a nie Nr kolumny (nie uwzględniłem w przykładzie) [syntax=vb]Sub Makro2() MyPath = "C:\magazyn\" myname = Dir(MyPath & "*.xls", vbNormal) rang = Array("A1",...
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
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...
E2007PL, ustawienia systemowe "dd-mm-rrrr"> Trzeba podstawić datę w formacie US. Postać polecenia musi mieć formę (dla 1 do 2 listopada 2013)[syntax=text]ActiveSheet.ListObject... Field:=2, Criteria1:= _ ">=11/1/2013", Operator:=xlAnd, Criteria2:="<=11/2/2013"[/syntax]Nale... w InputBox wpisywać daty w takim formacie,...
Już mam!!! Teraz walczę nad drugiem - ostatnim - zadaniem. Czy możesz mi powiedzieć jak to ugryźć?? Napisać funkcję użytkownika, która oblicza iloczyn k pierwszych cyfr zadanej liczby. Argumentami funkcji są: wielocyfrowa całkowita liczba dodatnia oraz liczba całkowita k, k < liczba cyfr zadanej liczby. Zastosować funkcję w arkuszu. Następnie przypisać...
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"...
o to mniej więcej mi chodziło. InputBox już mam, ale właśnie do niego trzeba ręcznie wpisywać dane :( w załączeniu jest zmodyfikowany pliczek. Chodzi mi o to żeby w konkretną komórkę wpisać dla opcji: 1 - SRAP 2 - New Good 3 - Defect 4 - INPUT
Z góry uprzedzam że jestem kompletnym laikiem w VBA – brakuje mi podstaw. W pracy miałam do czynienie z arkuszem obliczeniowym napisanym x lat temu w VBA w excelu który musiałam przystosować do zmieniających się przepisów i norm. Sprawiło mi to wiele frajdy, ale było to – najpierw delikatne grzebanie w cudzym kodzie, później pisanie na tej...
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, początkująca jestem więc może dlatego nie mogę przejść wydawałoby się prostej sprawy z makrem. W arkuszu "plan" mam dane zaczynające się zawsze od dnia bieżącego. Chcę kopiować codziennie wskazany zakres do arkusza "konsolidacja danych" w zależności od daty. Wskazuję szukaną datę w "konsolidacji danych" przez InputBox od któej chcę zacząć kopiowanie...
:arrow: marek003 Można wpleść coś takiego kol = Cells.Find(What:="Kod Wewnętrzny").Column i mamy numer kolumny w postaci liczby dla Cells :arrow: agentka83 Większość prostych makr "tworzymy" przez nagrywanie. Przykład: Musisz zamienić tekst A0012 na 0306 w kolumnie "F". 1. Włączasz rejestrator makr 2. Naciskasz Ctrl+H wypełniasz...
Mam taki problem z makrem. W pewnym folderze mam tylko jeden plik i jest on w formacie .xlsm. Niech się nazywa 1.xlsm Moje aktualne makro tworzy mi nowy skoroszyt excela (do innego folderu niż ten w którym jest wspomniany wcześniej 1.xlsm). Następnie chcę dokonać przeklejenia pewnych danych z starego excela (tego o którym wspomniałem 1.xlsm) do nowego....
Obecnie przedstawię poczynione przeze mnie próby. Na marginesie - wydaje mi się , że marek033 oraz adams_nt są na urlopie (i to całkiem słusznie) W przedstawionej tabeli w komórkach znajdują się formuły (= = jeżeli( - co prawda komórki w tabeli mam puste (w których miesiącach nie wpłacono) - ale (uwaga), makro ich nie traktuje jako puste. Jedynie te...
Najprościej zastosować Inputbox. x = InputBox("Podaj Nr wiersza", "Inputbox1") y = InputBox("Podaj Nr kolumny", "Inputbox2")
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, ";")...
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()
[syntax=vbscript]dane = Application.InputBox("jakiś tekst" & Chr(10) & "Podaj zakres dat", "Wprowadzanie zakresu dat") [/syntax]
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]
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]
[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]
) 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
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.
[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]
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
(...) 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ą......
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
W związku z pytaniem na pw. Utworzyłem sobie plik w c:\ o nazwie plik1.xlsx, w którym wpisałem tekst w komórki Od B34 w prawo. Następnie uruchomiłem makro (c:\ w InputBox'ie). Dane pięknie skopiowały się do "Arkusz2", komunikat: "skopiowano z 1 pliku". Możliwe przyczyny błędu: -podajesz złą lokalizację -lokalizacja jest dobra ale nie ma tam plików -nazwy...
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...
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)?
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.
Zmieniaj przy otwarciu (Workbook_Open) pliku. Jeśli nazwa "z głowy", to wykorzystaj InputBox.
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ą...
[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 =...
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]
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...
excel inputbox inputbox excela dodawanie inputbox
monitoring temperatury huawei e5186s laser lm317
satel integra klucz dloadx antena aktywna
Migomat 505W przerywa spawanie po 1 minucie - przyczyny Schemat wzmacniacza Alphard PA-100