[syntax=vbscript]Sub NowaKolumna() nk = Cells(60, Columns.Count).End(xlToLeft).Column + 1 Range("H60:H80").Copy Cells(60, nk) Application.CutCopyMode = False End Sub [/syntax]
Na przykład tak: [syntax=text]=ILE.NIEPUSTYCH(A1:INDEKS(A...
Brakuje pętli... Jeśli chcesz porównać komórki w zakresie z jakąś liczbą (tu średnia), to wpisz zakres do tablicy i porównuj z każdym elementem, lub prościej - zastosuj pętlę Np 'For Each kom In Range("N2:N11")'
Np. dla zakresu A1:B5 Od początku powinno być odblokowany. [syntax=vb]Private Sub Worksheet_Change(ByVal Target As Range) Dim zakres As Range Set zakres = Range("A1:B5") If Intersect(Target, zakres) Is Nothing Then Exit Sub Me.Unprotect 'haslo Target.Locked = True Me.Protect 'haslo End Sub [/syntax]
Po dodaniu w 2 linijce jak wyżej mam " invalid use of prioerty" U mnie działa
Powinieneś dodać własny skoroszyt jako przykład, co chcesz osiągnąć, bo w Excelu różne drogi prowadzą do celu. W każdym razie jeśli używasz funkcji ADR.POŚR, to jej pierwszy (a często jedyny) argument musi być w cudzysłowie - jeśli oznacza adres, z którego chcemy pobrać dane. Natomiast bez cudzysłowu - jeśli to jest komórka, która dopiero zawiera potrzebny...
Chyba chodzi tylko o podstawienie zakresu (pierwsza część makra), wtedy [syntax=vbscript]c = ActiveCell.Column r = ActiveCell.Row If c > 5 Then Range(Cells(r, c - 5), Cells(r, c - 1)).Select[/syntax]
Nie bardzo rozumiem, po co upierasz się przy jawnej pętli (to zawsze minimalnie dłużej trwa, a poza tym krótszy kod łatwiej się analizuje), ale jak koniecznie, to proszę: [syntax=vbscript]Sub Nazwy2a() Dim ost As Long, kom As Range ost = Cells(1, "A").End(xlDown).Row For Each kom In Range("B1:B" & ost) kom.FormulaR1C1 = "=StateFullName(RC[-1])" Next...
Kod czego ... pętli ... tablicy ? Pętli przecież masz, a tablica niekoniecznie potrzebna, można np. tak (o ile problem poprawnie opisany): [syntax=vbscript]Option Explicit Private Sub CommandButton2_Click() Const pth = "P:\RAPORT\" Const fle = "Plan wk" Const sht = "Main sheet" Const fsht = "R" Dim x As Integer, week As Integer Dim dzientygodnia As...
Dzień dobry, A co w tym kodzie oznacza "ark"? Czy nie jest to arkusz aktywny (ActiveSheet)? Poza tym czy 6 to stała? Jeśli tak, to po co tak komplikować ten adres, wystarczy [syntax=vbscript]ark.Range("E6:F" & dstW)[/syntax]Poza tym, jak często zmienia się wartość "dstW"? W sumie można makrem uruchomić też sprawdzanie poprawności danych, tylko tę procedurę...
(...) 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ą......
Dopasuj sobie takie makro: [syntax=vbscript]Sub Przelicz() Dim cel As Range With Worksheets("Generator cen") For Each cel In Worksheets("310").Range("A2:A180") .Range("B3") = cel.Value cel.Offset(, 3) = .Range("B26").Value Next cel End With End Sub[/syntax] Po otwarciu załącznika zapisz go sobie w formacie .xlsm. Ja użyłem starego formatu .xls ze względu...
Kontynuując, pola tekstowe należałoby "uporządkować numerycznie" zaś jedną etykietę (data) nazewniczo, np. tak: [syntax=txt]lab_dzis => 'Etykieta z wyświetlaną "dzisiejszą datą" TextBox1 => 'Nazwisko TextBox2 => 'Ulica TextBox3 => 'Kod pocztowy TextBox4 => 'Miejscowość TextBox5 => 'PESEL TextBox6 => 'NIP TextBox7 => 'Telefon TextBox8 => 'Pocztel TextBox9...
Niekoniecznie trzeba rozbijać na pojedyncze zakresy. Może być zakres złożony, ale zapisany tak: [syntax=vbscript]Sheets("KARTA").Range("... I24:P25, B50:AA66, B71:AA79, B84:AA87, B93:AA111").ClearContents [/syntax] Spacje można pominąć. Ograniczeniem jest długość tekstu adresów, która nie może przekroczyć 255 znaków. Jeśli miałoby być więcej, trzeba...
Użyj pętli For, wyłączając arkusz docelowy w instrukcji warunkowej. [url=http://www.elektroda.pl/rtvforum/to...
Próbujesz w OpenOffice uruchomić makro napisane w Excelu? Nie będzie działać. Trzeba przepisać. Mnóstwo informacji znajdziesz w Internecie. Tu przykład makra wydruku z zapisaniem "oryginał/kopia": http://obrazki.elektroda.pl/5534132900_1... Generalnie nie jest to trudne. Trzeba "złapać". Zakres C7:C10 aktywnego arkusza w VBA zapisujesz...
Spróbuj rozdzielić parametr userChoice :D Zmniejszysz ilość cases i obsłużysz wszystkie offsety :spoko: [syntax=vbscript]Dim userChoice As String Dim Choice As String Dim k As Integer userChoice = InputBox("Please type PRODUCT name.") Choice = Mid(userChoice, 1, 1) k = CInt(Mid(userChoice, 2)) - 1 Select Case Choice ... Case "Z" Sheets("CAT. Z").Range("F3:F154").Offset(0,...
[syntax=vb]Sub copy_ujemne() For wiersz = 4 To Cells(Rows.Count, 1).End(xlUp).Row If Cells(wiersz, 1) < 0 Then Cells(wiersz, 3) = Cells(wiersz, 1) Next End Sub [/syntax]
Dobry wieczór, Nie znam się na SolidWorks, ale w kodzie VBA widzę przynajmniej dwa błędy: pierwszy w połączeniu Range("Q5...BJ5").Selection.Copy Powinno być rozbite na dwie instrukcje Range("Q5...BJ5").Select Selection.Copy Można też pominąć selekcję i pozostawić tylko: Range("Q5...BJ5").Copy Drugi błąd: Active.Worksheet.Paste Po pierwsze ta instrukcja...
Zrobiłem formatowanie warunkowe na jednym wierszu. https://filmy.elektroda.pl/13_1523001701...
Dlatego się "nie zmienia" bo wszystko masz powiązane z jedną komórką celu. Ale to i tak by nic nie dało gdyż obliczenia na "karta" dotyczą tylko jednego pracownika na raz (czyli tylko jednej listy rozwijalnej), więc nie zobaczyłbyś nic więcej (byś musiał pod każdą listę robić oddzielny arkusz "dublujący" arkusz "Karta"). Wydaje mi się że nie do końca...
[syntax=vbscript]Sub Kopiuj() Set a = ActiveWorkbook i = Application.FileDialog(msoFileDialogOpen... s = Application.FileDialog(msoFileDialogOpen... Set b = Workbooks.Open(s) a.Sheets(1).Range("K20:M23").Copy b.Sheets(1).Range("K20") b.Close True End Sub [/syntax]
Wypróbuj to: [syntax=actionscript]=JEŻELI(LICZ.JEŻELI...
Co Ty na to JRV? Gdyby arkusza, byłoby to rozwiązanie
[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 =...
Range("G6:G89").Select Jak go zmienić, żeby zakres brał pod uwagę wszystkie niepuste komórki w tej kolumnie? Więc tak, jeżeli chcesz, żeby z całej kolumny zaznaczył zakres składający się z niepustych komórek to będzie takie makro: Sub proba() Dim x As Double Dim zakres As String For x = 1 To ActiveSheet.Cells(ActiveSheet.Rows.C... "G").End(xlUp).Row...
Trzeba znać nazwę arkusza. Nabela odpowiada rzeczywiste Zdjęcia w #1 ?
Np funkcja LICZ.JEŻELI(zakres komórek;nr tel)
[syntax=vbscript]dane = Application.InputBox("jakiś tekst" & Chr(10) & "Podaj zakres dat", "Wprowadzanie zakresu dat") [/syntax]
Nie znam się ale myślę, że sprawdzając od pierwszego do ostatniego arkusza całe zakresy komórek.
Sprawa jest bardziej skomplikowana niż się na pierwszy rzut oka wydaje, bo Target.Value w zdarzeniu Change będzie też przyjmowało puste wartości (przy czyszczeniu/usuwaniu komórki), a także może być zakresem Range() np. przy kopiuj - wklej do kilku komórek (podobnie przy czyszczeniu zakresu komórek), przez co makro będzie się wywalać. Trzeba ew. je...
Najprostsze rozwiązanie jakie mi przychodzi w przypadku sekund to wykorzystanie w komórce G28 funkcji SUMA dla zakresu komórek G15:G27. Suma i tak będzie jednego składnika bo w danej chwili wyświetla się tylko jeden wiersz, więc wartość sumy będzie równa sekundom z jednej komórki.
A próbowałeś zastosować formatowanie warunkowe dostępne bezpośrednio z paska narzędzi? Wystarczy zaznaczyć zakres komórek i wybrać typ/sposób formatowania.
Spróbuj formatowania warunkowego wg takiego wzoru: [syntax=text]=WIERSZ()>PODAJ.POZYCJĘ(PRA... komórek do sformatowania musisz sobie zaznaczyć definiując formatowanie. Formuła formatowania jest zapisana z punktu widzenia pierwszej komórki obszaru formatowania, zakres wierszy w formule musi być zgodny z tym, jaki obszar...
Porównujesz wartość komórki z zakresem komórek. Jeżeli ma być że jest równe jednej lub drugiej z tego zakresu, użyj funkcji logicznej LUB(). Natomiast jezeli w zakresie chcesz coś znaleźć, to funkcja JEŻELI jest całkowicie nieprzydatna, tu trzeba użyć funkcji WYSZUKAJ.PIONOWO albo WYSZUKAJ.POZIOMO.
lecz widoczny wynik to sam wiersz Sumy A jaki zakres komórek obejmuje nazwa Cena :?: :D Jeśli chcesz sumować "tylko widoczne" - zmień formułę na =SUMY.CZĘŚCIOWE(9;[Cena]) :idea:
Niestety też nie widzę opcji by nie było makra. Ale nie makro ukrywające tylko zwykłe wprowadzenie informacji do wydruku do ilu stron ma drukować. Czyli pod przycisk "wrzucić" [syntax=vb] Sub Druk() ActiveWindow.SelectedSheets.PrintOut From:=1, To:=Sheets("POŚW").Range("E22") End Sub [/syntax] I "drukować" przyciskiem.
To chyba proste. Jak się pojawia nowa to porównać ją z zapamiętaną. Jak jest większa (ta nowa) to ją zapamiętać, a jak nie, to czekać na następną. W zakresie komórek można użyć funkcjję MAX(), która zwraca wartość największą ze wskazanego zakresu.
A może wystarczy dla tych komórek samo sprawdzanie poprawności? Wg mnie prościej. Stań na komórce gdzie maja być inicjały i : http://obrazki.elektroda.pl/6253839200_1... http://obrazki.elektroda.pl/8571485200_1... (oczywiści lista inicjałów może być gdzie indziej. Na marginesie: jeżeli lista jest w innym arkuszu to musi...
Sprawdź takie makro: Cells(CC, 3).Cut zastąp linijką Cells(CC, 3).Copy . Makro działa od pierwszego wiersza, jeśli pierwszy wiersz Twojej tabeli to nagłówek, początkowe parametry CA oraz CC zmień na numer wiersza, od którego zaczynają się faktyczne dane. Makro działa do momentu napotkania pierwszej pustej komórki w kolumnie C.
Dzień dobry, Jest taka możliwość, tylko zakresowi komórek tworzących listę trzeba nadać nazwę np. lista i przy definiowaniu źródła trzeba użyć tej nazwy: =lista (ważne, żeby było = na początku). Zakres musi zawierać pustą komórkę, a pole "ignoruj puste" musi być zaznaczone. Powodzenia!
[syntax=vb] Sub czyszczenie() Dim ow&, r&, oc&, wr& ow = Cells(Rows.Count, 1).End(xlUp).Row r = 1 While r <= ow If Cells(r, 1) <> Empty Then oc = Application.Match("wymiar", Rows(r - 1), 0) - 1 wr = Cells(r, 1).End(xlDown).Row Range(Cells(r, 2), Cells(wr, oc)).ClearContents r = wr End If r = r + 1 Wend End Sub [/syntax]
dodałem to With OutMail .To = Range("k2").Value & ";" & range("k3").value i tak dalej
Jest taka funkcja - LICZ.JEŻELI(zakres, kryteria). zakres - podajesz zakres komórek do przeszukania np. A1:A10 kryteria - liczba, wyrażenie bądź tekst. Oczywiście jeżeli każdy wpis jest w oddzielnej komórce.
[syntax=vbscript]Sub Scal() ow = Cells(Rows.Count, "A").End(xlUp).Row b = 1 For x = 1 To ow If Not f Then b = x f = True End If If Cells(x + 1) <> Cells(x, 1) Then Range(Cells(b, 2), Cells(x, 2)).Merge Cells(b, 2) = Cells(x, 1) f = False End If Next End Sub[/syntax]
Ukrywanie kolumn lub wierszy, które nie są drukowane
Propozycja kodu w VBA jest bardzo zgrabna, ale Excel też nie jest bezsilny wobec takiego problemu, tylko trzeba użyć formuły tablicowej, np. takiej: =SUMA(JEŻELI(MOD(NR.KOLUMNY(zakres1)-NR.... Formułę zatwierdzamy przez Ctrl+Shift+Enter. Znaczenie oznaczeń: zakres1 = zakres komórek od pierwszej do przedostatniej zakres2...
szukałem, kombinowałem i zawsze coś nie wychodziło :/ =JEŻELI(LUB(G34<238;G34>407);"..."... to działa dokładnie tak jak chciałem, dzięki za pomoc :) Co tu jest do kombinowania? Suma logiczna 2 warunków? A co do podziękowania to w dobrym zwyczaju jest wciśniecie przycisku pomógł.. ;)
Jeśli można z kolumną pomocniczą, to patrz załącznik.
A mógłbyś pokazać rozwiązanie z zastosowaniem makra, tak aby jeszcze pogrubiało No nie :cunning: - to zupełnie nie ma sensu łączenie rozwiązania "formułowego" z rozwiązaniem VBA :cry: Żeby uzyskać efekt jak na zrzucie: 864550 konieczne jest precyzyjne rzeźbienie (musisz przewidzieć, które fragmenty tekstu mają być pogrubione :crazyeyes: ) wszystkiego...
[syntax=vb]Sub kopia() If ActiveCell.Column <> 4 Then MsgBox "Wybierz indeks z kolumny D": Exit Sub ow = Sheets("Arkusz2").Range("C" & Rows.Count).End(xlUp).Row + 1 If ow < 15 Then ow = 15 r = ActiveCell.Row Range(Cells(r, "C"), Cells(r, "H")).Copy Sheets("Arkusz2").Range("C" & ow) End Sub [/syntax]
https://obrazki.elektroda.pl/9888409700_... Ale jakiś komunikat, konkretna linia? Jaki Office? 32, 64bit? Komunikat jak z załączonym zdjeciu. Office 2010 Windows 7 - 64bit
Witam, jako początkujący w VBA zaciąłem się nad zagadnieniem jak skopiować dane z kilku zakresów w jednym arkuszu do drugiego arkusza w momencie wyboru i wskazania konkretnej komórki. Mam arkusz formularza, z którego chcę uruchamiając makro, otworzyć arkusz rejestru i bez przeszukiwania pierwszego wolnego wiersza wskazać dowolną zaznaczoną przez siebie...
Tak dokładnie, tylko z zakresu komórek Z2:AA2 w arkuszach innych niż aktywny [syntax=vbscript]For Each ws In Sheets If ws.Name <> ActiveSheet.Name Then With ws.Range("Z2:AA2") .Value = .Value End With End If Next ws[/syntax]
A gdzie ta tabela przestawna, bo nie widzę :( Właściwie to widzę tylko tabelkę z wpisanymi liczbami. Jeśli powinna być, to zapisz w postaci normalnego pliku xls - nie każdy ma Excela 2007
Możesz użyć funkcji użytkownika: [syntax=vbscript]Function ZlaczTexty1Kolumna(zakres As Range, Optional separator As String) As String 'funkcja łączy wartości z jednokolumnowego zakresu komórek w jeden ciąg tekstowy oddzielony zdefiniowanym separatorem 'funkcja działa tylko dla zakresów ciągłych ZlaczTexty1Kolumna = Join(Application.Transpose(zakres.Value)...
Dobry wieczór, Formuły otoczone nawiasami klamrowymi są to formuły tablicowe. Formuły te działają w inny sposób niż formuły zwykłe. Zatwierdza się je nie samym Enter, lecz kombinacją Ctrl+Shift+Enter. Komórki z tymi formułami można kopiować w całości w zwykły sposób, natomiast gdy poddaje się je edycji trzeba na końcu użyć Ctrl+Shift+Enter. Formuła...
Rozumiem, że masz świadomość, że na samej liście rozwijanej kolorów nie będzie widać, bo taka już jej uroda. Natomiast można ustawić kolor za pomocą makra zdarzeniowego Worksheet_Change na podstawie wyboru z listy. Zakres komórek wzorcowych ma nazwę "Wzornik". Sprawdzanie poprawności trzeba ustawić ręcznie, pamiętając o wyłączeniu alertów. Komórki ze...
Jeśli w Excelu używasz funkcji ŚREDNIA do zakresu komórek, to Excel bierze pod uwagę tylko komórki wypełnione liczbami. Nie przeszkadzają mu komórki puste ani komórki z tekstami. Przeszkadzają tylko błędy, bo to uniemożliwia obliczenie. Więc jeśli za każdym razem potrzebujesz tylko bieżącą średnią, to możesz użyć pełnego zakresu z zapasem i stopniowo...
Witam. Na samym początku chcę powiedzieć, że moja wiedza w zakresie programowania VBA, jest bardzo ograniczona. Potrzebowałbym skryptu, który powoduje kopiowanie komórek w dół kolumny. W taki sposób, że kopiuje komórki z numeru rejestracyjnego do kolejnego numeru. Jak napotka kolejny numer to kopiuje zasięg do kolejnego numeru. Z góry dziękuję za jakąkolwiek...
[syntax=vbscript]Sub Laczenie() k = Array("AD", "AF", "AG", "AH", "AJ", "AK", "AN", "AO", "AP", "AQ", "AS", "AW", "AX", "AY", "BB", "BC", "BE", "BH", "BM", "BN", "BO", "BV", "BY", "BX", "BY", "BZ", "CB", "CD", "CG", "CH", "CM", "CN", "CO", "CZ", "DB", "DC", "DD", "DE", "DH", "DI", "DJ", "DM", "DN", "DX", "EC", "EM", "EN", "EU", "EW", "EY", "FD", "FF",...
Jak masz nazwę tabeli, to wystarczy do jej identyfikacji. A na przyszłość zawsze daj załącznik. [syntax=text]Private Sub CommandButton1_Click() ListObjects("Tabela7").ListRows.Add AlwaysInsert:=True End Sub [/syntax]
Manual do FX1N mówi że ten zakres komórek D jest podtrzymywany kondensatorem. Czas podtrzymania określony jest na około 10 dni. Ten sterownik nie ma wbudowanej baterii, ale jest możliwe użycie modułu opcjonalnego FX1N-BAT. https://obrazki.elektroda.pl/4658818800_... Po drugie, wartość w D272 sugeruje że odczytujesz ją jako rejestr DD...
Czy ktoś wie jak skonstruować taką funkcję? Akurat wiem jak transponować... ale tablice danych :sm9: 866748 z wykorzystaniem funkcji tablicowych i nazwanych zakresów komórek - jak w załączniku. :spoko: 866750
Podpowiedź numer 2: [syntax=vbscript]Private Sub Worksheet_Change(ByVal Target As Range) [/syntax]
Listę tworzysz wchodząc w: Dane >> Sprawdzanie poprawności W kryteriach poprawności wybierasz: Dozwolone: > Lista a jako źródło podajesz zakres komórek w którym są wartości na listę.
Witam Mam makro która wstawia obrazek w określone miejsce w arkuszu i skaluje go. Problem polega na tym że jest na sztywno zdefiniowane z jakiej komórki ma pobrać adres pliku "Inf!A29" = C:\Documents\SNC00056.jpg i w jakie komórce jest zakres gdzie wstawić "Inf!H23" = A1:D10. Dal 5 obrazków musiał bym zdefiniować 5 takich procedur jak przekazać adres...
Wersja zmodyfikowana. Dodałem komentarze, żeby wiadomo było co należy zmienić. Użycie tabeli Excela byłoby celowe gdyby ta tabela zmieniała miejsce. Przy przesuwaniu zakresów komórek można stosować notację z przesunięciem np. jeśli był zakres Range("A1:D1"), a teraz jego początek chcemy przenieść do C4, to można to "wyliczyć" tak: [syntax=vbscript]Range("C4").Range("A1:D...
To już wystarczyło zmienić numery wierszy w adresach. Natomiast ważne, aby nie kopiować formuł tablicowych do scalonych komórek. Generalnie to ze scalonymi komórkami same kłopoty. Scalanie komórek - jeśli jest konieczne - powinno być ostatnią czynnością w arkuszu, po umieszczeniu wszystkich danych i formuł. Pozdrowienia
Spróbuj takiej modyfikacji :D zaznaczyć cały zakres "do scalania" :idea: Twój kod też działa ale tylko jeśli zaznaczysz obszar z jedną wartością :please:
Jeżeli chodzi o przenoszenie formatowania to excel właściwie nie ma żadnych funkcji. Można to zrobić jedynie poprzez makro (VBA) lub "pisaniną" poprzez formatowanie warunkowe i to w excelu 2007 i powyżej, bo niższe mogą mieć tylko max 3 warunki. Ten kto zna jako-tako programowanie w VAB może sobie poradzić. Ten kto nie ma pojęcia na początku upadnie,...
Sposobów może być kilka, ale jak już tak zacząłeś, to można to kontynuować. Można zacząć od oczyszczenia zakresu komórek przeznaczonych na wynik (żeby przy powtórnym wywołaniu procedury było widać, że coś się dzieje). [syntax=vbscript]ActiveCell.Resize(11, 11).ClearContents[/syntax]Wielkość czyszczonego obszaru można dopasować do sytuacji. Jeśli zacząłeś...
To jest porównanie zmiennych, gdzie zmienna "kom" ma domyślną wartość "Value" i jest porównywana ze zmienną "MergeArea", która jest na tyle nieszczęśliwie dobrana nazewniczo, że ma tę samą nazwę co zastrzeżona w vba właściwość "MergeArea" ... :-) ... Skorzystaj nie tylko z właściwości "MergeArea", ale również z "MergeCells", która zwraca info o tym,...
A jest możliwość tak zmodyfikować kod, aby brane pod uwagę były również słowa dwu/trzy/cztero wyrazowe? Może tak? Tyle że mechanizm takiego porównywania zadziałałby dwa razy w przykładzie dla frazy ze zwrotem "Rower wodny". Raz znalazłby Rower, raz Rower wodny. Aby jakoś to wyeliminować zakładam, że powinna zostać zwrócona ta dłuższa wartość.
[syntax=vbscript]Function Polacz(z As Range) As String For Each k In z If k <> "" Then p = p & k & "," Next If p <> "" Then Polacz = Mid(p, 1, Len(p) - 1) End Function[/syntax]
W taki sposób tego nie zrobisz. Właściwości komórki można porównywać ze zmienną, ale każdą właściwość musisz porównywać osobno. Każda właściwość ma swoją wartość (liczbową, tekstową lub logiczną) i to można sprawdzić i uzyskać odpowiedni wynik, ale nie da się sprawdzić hurtem całego formatowania jednej komórki w stosunku do drugiej. Na przykład możesz...
Data to liczba, a liczbę można wykorzystać w pętli FOR, tylko trzeba ją zapisać pomiędzy hashami i "po amerykańsku": [syntax=vb]poz = 2 For i = #4/1/2013# To #5/1/2013# Cells(poz, 1).Value = i poz = poz + 1 Next i[/syntax]
Do While ... Loop jest niewłaściwym warunkiem. Pętla For Each ... Nex przeszuka wszystkie komórki zakresu, natomiast wybór komórki z tekstem 6-cio znakowym powinien nastąpić przez If ... End if.
Jeśli to miałyby być formuły, to tak jak napisałem: Trzeba wpisywać po kolei od lewej z zachowaniem ciągłości numeracji. Jeśli chcesz modyfikować dane losowo, to tylko VBA. A jeśli VBA, to musiałbyś opisać jak dokładnie miałoby to działać. Czy zakres komórek C6:P6 byłby stały? Czy kolejność numerów miałaby być korygowana na bieżąco po każdym wstawionym...
I cóż? Nikt nie ma pomysłu jakby to można fajnie zautomatyzować?
Dodając kolejne wiersze, zawartość komórek przy odwołaniu bezwzględnymi jest stała i zaciąga dane które ma zaciągać, ale już komórki z owymi formułami ulegają przemieszczeniu. Nie widzę tu nic niezwykłego. Możesz dokładniej wyjaśnić? Lub napisz co chciałbyś osiągnąć. Może jakiś plik z przykładem.
Do odnalezienia minimum: =MIN(zakres komórek) dla maksimum: =MAX(zakres komórek) odejmowanie: =MAX()-MIN() ten sam wynik (bo ma być dodatni) można uzyskać: =MODUŁ.LICZBY(komórka1 - komórka2) nie ma znaczenia czy kom1 > kom2 czy kom1 < kom2 wynik zawsze będzie ten sam. Nie wiem czy to jest do końca zrozumiałe....
A wykres Gantta ci nie wystarczy? [url=http://www.elektroda.pl/rtvforum/to... masz podobny wątek [url=http://office.microsoft.com/pl-pl/e... tu Co Microsoft pisze o wykresie Gantta Bo to co ty chcesz zrobić to chyba bez makra się nie obejdzie. Co prawda zrobiłem coś takiego bez makr. Ale formatowanie warunkowe pozwala...
Dobra zaczniemy od początku ze program nie był uzupełniony, dlatego nic nie liczył, już trochę uzupełniłem. Potrzebuje, aby program wyliczał w arkuszu1 wszystkie sumy począwszy od J8 do J18 "zestawienie”, czyli urlopu kursy chorobowe itd., jeśli chodzi o arkusz 2 to chciałem zrobić, aby każda osoba była do wyboru i jej dane można było przez zmianę...
Prawdopodobnie ta linijka powinna wyglądać tak: [syntax=vb]Cells(b + 2, 1).Formula = "=IRR(A1:" & Cells(b + 1, 1).Address & ")"[/syntax]
Można np. tak:[syntax=text]=JEŻELI(LICZ.JEŻELI(APY... sobie dopasuj, tu jest taki jak był w przykładowym pliku, w poście powyżej podałeś trochę inny.
Można również połączyć zakresy komórek i wówczas kod jest następujący:[syntax=vb] Dim AktywneWiersze As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) Set AktywneWiersze = Union(Range("D13:BI35"), Range("D38:BI108"), Range("D111:BI133")) If Not Intersect(Target, AktywneWiersze) Is Nothing Then ActiveWorkbook.Names("AktywnyWiersz1").R...
Dziękuje za pomoc. Można zamknąć temat.
Rozdzielenie formatu dd-mm-rrrr na: I dd I mm I rrrr I najprościej wykonać tak: Zaznaczyć zakres komórek > Dane > Tekst jako kolumny > Rozdzielany > Ograniczniki : wybrać "inny" (w okienku wpisać "-") > Dalej > Dalej > Zakończ (zakończyć działanie kreatora konwersji) i w wyniku mamy każdy blok daty w osobnej kolumnie. Dotyczy to zarówno 1 komórki, paru...
[syntax=vbscript]Sub Dopisz() nw = Cells(Rows.Count, "C").End(xlUp).Row + 1 For x = 5 To nw If Cells(x, "C") = "" Then Range("C" & x) = "Szukaj pierwszej wolne i wpisz, za każdym kliknięciem" Range("D" & x) = "1" Range("F" & x) = "Przykład" Range("C" & x).Interior.ColorIndex = 37 Range("E" & x) = Application.UserName Range("C" & nw + 1).Activate Exit...
Proponuję takie makro: [syntax=vbscript]Sub Moduł_Kliknięcie() Dim kom As Range, form As String For Each kom In Selection If kom.HasFormula Then form = Application.Replace(kom.Formula, 2, 0, "ABS(") On Error Resume Next kom.Formula = Replace(form, "*", ")*", 1, 1) On Error GoTo 0 End If Next kom End Sub[/syntax]Przed użyciem makra należy zaznaczyć zakres...
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....
Jest tu faktycznie niekonsekwencja. Zakres B3:K13 liczy 10 kolumn i 11 wierszy. Inny sposób rozwiązania. Zdefiniować nazwę "zakres" wg wzoru: [syntax=text]=PRZESUNIĘCIE(ADR.POŚR(KOMÓ... przykładowy zakres obejmuje 5 wierszy i 3 kolumny. To sobie poprawisz tak jak chcesz. Początek zakresu ustalasz ustawiając kursor (komórkę...
Wyszukaj ile razy występuję wartość 0001 w arkuszu 2 w zakresie komórek a1:a100. W przeszukiwanych kómórkach występują wartośći oddzielone znakiem ; np - A1 0002;0005;0004 - A2 003;004;001
A koniecznie musi być marko? Formuły z powodzeniem radzą sobie z takim zdaniem. Sprawdź załącznik.
Witajcie Potrzebuje ustawić zakres komórek, przy kliknięciu których uruchamia sie makro potrzebuje ustawić 2 zakresy a mianowicie "J3:J"&lrow oraz "L3:M"&lrow czyli w kolumnie j oraz l do m ale do ostatniego wiesza w kolumnie a i tu prosba. jak zapisac te zakresy Kiluk
Sorki - ale idiota jestem i nie wiem jak Kto Ci takich głupot naopowiadał? Rusz głową, a przejdzie jak ręką odjął ;) SUMA.JEŻELI(zakres; kryteria;
a jak zrobić losową liczbę ? Nie wiem co chcesz zrobić :?: i do jakich celów chcesz to stosować :cry: Dla pseudolosowego :!: wypełniania jakiegoś zakresu komórek liczbami od 1 do 49 (Totolotek :D ) możesz wykorzystać kod: [syntax=vbscript]Sub FillCells oSelect=ThisComponent.CurrentSelection oColumn=oselect.Columns oRow=oSelect.Rows For nc= 0 To oColumn.getCount-1...
z kilku innych arkuszy Z arkuszy, czy ze skoroszytów? Jeśli z arkuszy (w tym samym skoroszycie) to wstawiasz nazwę arkusza, wykrzyknik i odnosisz się do jego zakresu/komórki. Np. w ten sposób odwołasz się np. do A1: [syntax=vb]=Arkusz1!A1[/syntax] Jeśli ze skoroszytów, to tutaj wyjaśnienie: http://office.microsoft.com/pl-pl/excel-...
Żaden problem wpisać to na stałe do kodu. Rzecz w tym, że Ty posługujesz się jakimś swoim szyfrem i nie piszesz wyraźnie o co chodzi. Zostawiłem odniesienie do arkusza, żeby łatwiej było zmienić dane. Ale mogą być na stałe w kodzie: Function Mnożenie(A As String, B As Double) As Double Dim miasta As New Collection miasta.Add 5, "gdańska"...
excel zakres komórek zakres komórek excel ukrywanie komórek
wymiana parownik renault perkins claas liniowy enkoder
Ukryte menu w Pioneer DMH-G220BT - dostęp i funkcje Schemat regulatora temperatury kominka Delta 100K