W takim razie jak obejść fakt że w komórce Krotność nie musi być żadna wartość. Jeden z if'ów sprawdza to i odpowiednio przelicza wartości. Chodzi Ci o tego typu if'y? row.Cells ) również zostanie rzucony wyjątek, bo nie można wykonać żadnej metody na null'u. W tym przypadku możesz użyć as .
[syntax=vbscript]Sub Handlowcy() Sheets("Dane").Select ow = Cells(Rows.Count, "E").End(xlUp).Row For x = 2 To ow For y = 2 To Sheets.Count If Cells(x, "F") = Sheets(y).Name Then nw = Sheets(y).Cells(Rows.Count, "A").End(xlUp).Row + 1 Cells(x, "E").Copy Sheets(y).Cells(nw, "A") Cells(x, "G").Copy Sheets(y).Cells(nw, "B") End If Next Next End Sub [/syntax]...
Witaj Zamiast tego Rows(1).Copy Destination:=Rows(ost_wiersz) wpisz Rows(ost_wiersz) = Rows(1).Value Dodano po 2 z wiersza „A” "A" to jest kolumna
Cells(NextRow, 1) = Cells(NextRow -1, 1) + 1
a ja potrzebuję taki wynik selecta: ID; IMIE; NAZWISKO; FUNKCYJNY; PREMIA 1; John; Novak; <null>; 100 2; Kate; Novak; <null>; <null> 3; Jack; Kovalsky; <null>; <null> 4; Ian; Smith; 500; 300 Użyj selecta w select-cie. [syntax=sql]Select PRACOWNIK.*, (select sum(KWOTA) from dodatki as dodatki1 where dodatki1.ID=Pracownik.ID...
no Więc dobrze postanowiłem zrobić to sposobem, który zaleciłeś Markoz. Wyliczyłem, że bede potrzebowal około 3000 kombinacji czyli 3000 kolumn pomocniczych. Cos strasznie kombinujesz. W excelu nie wskazane jest rozbudowywanie arkusza na szerokość, bo to go strasznie spowalnia. Z tego co widzę bardzo mało znasz excela, a to sprawia, ze niewłaściwie...
Przecinek a średnik to właśnie różnica wersji. Funkcja podająca pozycję w tabeli Podaj.pozycję(Szukana wartość ; przeszukiwana tabela; typ porównania 0 lub 1)[ jak 1/prawda to musi być kolejność rosnąca i zwraca pozycję liczby równej lub o "krok" mniejszej jeżeli 0 fałsz szuka dokładnie tego samego jak szukana wartość jeżeli nie znajdzie...
wyszło zupełnie inaczej niż we wzorze Mówisz zupełnie inaczej. A co konkretnie? Nie wstawił wiersza 4 (Twojej tabeli 3). Nie przeniósł daty z C3 do C4? Nie zsumował D2 i D3 w D4?
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,...
Dzień dobry, W takiej sytuacji zawsze lepiej dać załącznik z przykładowymi danymi, bo po co tracić czas na kopiowanie z tekstu. Próbka danych jest mała, ale sądzę, że wystarczy zwykłe WYSZUKAJ.PIONOWO zabezpieczone funkcją JEŻELI.BŁĄD przed komunikatem o braku danych. Zakładam, że Excel w wersji >=2007. Załączony plik .xls proszę wczytać do Excela i...
usuwanie wierszy z tabeli przy powtarzającej się wartości
Zawsze warto napisać, w której wersji Excela ma pracować to rozwiązanie, bo w różnych wersjach są dostępne różne funkcje. Jeśli chodzi o rozdzielenie formułą do osobnych komórek danych rozdzielonych średnikami, to na upartego się da, ale to dość złożone. W tym przypadku sugerowałbym użycie VBA i funkcji UDF, która przetwarzałaby listę rozdzieloną średnikami....
w danym wierszu nigdy nie wystąpi taka sytuacja aby ten sam człowiek był w więcej niż jednej kolumnie W takim razie porównanie zastąp wyszukiwaniem. http://obrazki.elektroda.pl/3486189600_1... =JEŻELI(CZY.BŁĄD(WYSZUKAJ.POZIOM...
To ma być jednorazowa akcja, z której będzie tylko eksport do Excela. Sądziłem że to dobra sytuacja żeby trochę podszkolić się w SQL. No to by cię czekał skok w SQLu from zero to hero, zupełnie na głęboką wodę. Warto ? Dasz radę? Jeśli mogę sie uznać za jako-tako wprawionego w SQLu, to nie chlastam się z bardzo wysilonymi przypadkami (żeby wcisnąć...
W momencie wystąpienia błędu sprawdź wartość zmiennej 'i' i potem sprawdź komórkę o wartości wiersza zmiennej 'i' w kolumnie 'L'. Chodzi o zmienną 'dan4' - tutaj tkwi problem.
Witaj Po mojemu powinno być coś takiego:[syntax=vb]Sub KopiujZakres() Dim c As Range For Each c In Range("A1:Z1") If c.Value = "XYZ" Then Range("zak").Copy c.Offset(10, 0) 'już po robocie, więc Exit Sub End If Next c End Sub[/syntax]
Wstawiam plik z rozwiązaniem problemu, tak jak ja go zrozumiałem. W kodzie makra nie wstawiałem objaśnień, bo zmienne nazwałem aż naddto opisowo. Jeśli czegoś nie rozumiesz z procedury, korzystaj z F1 ustawiając kursor na nieznanym Ci "słowie". Aha, nie zapomnij włączyć makr w Excelu, najlepiej na stale. Dostęp do edytora VBA to chyba wiesz: Alt + F11...
Sprawdź, czy o to chodziło andie
Dlaczego zmienna 'l' jest nadawana z wartości ostatniego wiersza (+1) z pliku 'b', a nie z 'a'?[/quote]
Analogicznie [syntax=vb] For Each c In ActiveSheet.Range("C1:C22") ' przeszukiwanie If c = cc2.Value And Range("A" & c.Row)= cc1.Value Then wiersz = c.Row Exit For End If Next c [/syntax] Edit
Jest w Excelu dodatek darmowy Power Query do wersji 2010 i 2013 a od wersji 2016 jest wbydowany który potrafi to zrobić bez VBA Tu masz link jak to zrobić Pozdrawiam. https://www.youtube.com/watch?v=oAOXgHq0...
Piszesz, że ma scalać wiersze, jeżeli wartości w kolumnach A:H oraz K są takie same, a w przykładzie: w 6 wierszu wartość w kolumnie A jest inna, a w 3 wierszu: w kolumnie G - mimo to zaznaczyłeś je na żółto. To jak to w końcu jest?? Czy scalanie dotyczy tylko jednej tabeli, czy wszystkich? Czy one mają stałą długość, czy się zmieniają? Czy wiersze...
Witam, Stworzyłam wykres gantta w excelu, gdzie w jendym wierszu mam daty narastająco, a w wierszu poniżej pewne wartości odpowiadające, czy w danym czasie jest wykonywane zadanie , czy nie (jest wartość 1, nie wartość 0). Zależy mi teraz na tym, aby stworzyć formułę, która wypluje mi datę startu i końca danego zadania . Przykład w załączniku. Proszę...
Chodzi o tę drugą pętlę? Wtedy [syntax=vbscript]If Cells(wiersz, 4) > 99 Then .Cells(wwrs, 4) = Cells(wiersz, 4)[/syntax]itd
Powinnaś dokładnie opisać swoje dane, a poza tym trzeba mieć świadomość istnienia dwóch zasadniczych algorytmów wyszukiwania: dokładnego i przybliżonego. Algorytm dokładny działa w ten sposób, że szuka dokładnie poszukiwanego wzorca i jeśli go nie znajdzie zwraca błąd. Jeśli wzorzec występuje wielokrotnie - zwraca pierwsze wystąpienie. Dane do tego...
makrem[syntax=vb]Sub usunDupKol() tRow = 3 While Cells(tRow, 1) <> "" For c = Cells(tRow, Columns.Count).End(xlToLeft).Column To 2 Step -1 If Application.CountIf(Rows(tRow), Cells(tRow, c)) > 1 Then Cells(tRow, c).Delete xlToLeft End If Next tRow = tRow + 1 Wend End Sub [/syntax]
Dodano po 19 Excel / VBA / wstawianie i kopiowanie wierszy z rozdzieleniem wartości
Powiedzmy że działa - potestuj. Trochę info o pliku: Podstawa: Makro sprawdza w nagłówku (w wierszu drugim) gdzie jest tekst "Zadanie" i "Grupa interwencyjna" jak również w wierszu trzecim szuka ostatniej niepustej komórki. (po tym rozpoznaje ile jest poszczególnych kolumn. Jeżeli zmienisz nazwy dodawać dowolną ilość kolumn do zadania i do pracowników....
Spróbuj tej wersji: [syntax=vb]Sub Makro1() ' ' Makro1 Makro ' Makro zarejestrowane 2013-01-24, autor Darek ' ' Dim maxIndex, maxX, maxY, nextFree, tmp, x, q As Integer Range("A1").Select maxX = ActiveCell.SpecialCells(xlLastCell).Colu... maxY = ActiveCell.End(xlDown).Row maxIndex = Round(maxX / 2) Dim nazwy() As String Dim wartosci() As Integer ReDim...
Liczbę zgodności można uzyskać dość łatwo pod warunkiem, że wpisy będą faktycznie identyczne. Formuła tablicowa: [syntax=text]=SUMA(--($C2:$H2=INDEKSY!$A...
Najprostsze co można zrobić: [syntax=vbscript]Option Explicit Sub sumuj1() Dim w As Long: w = 2 Application.ScreenUpdating = False Do Until Cells(w, "a").Value = "" If Cells(w, "g").Value = Cells(w + 1, "g").Value Then Cells(w, "a").Value = Cells(w, "a").Value & Chr(10) & Cells(w + 1, "a").Value Cells(w, "b").Value = Cells(w, "b").Value + Cells(w...
Co musiałabym dopisać w moim kodzie Pętle, która sprawdzi czy komórki w f są róże od pustej i je usunie.
[syntax=vb]sub usuniecie() Application.ScreenUpdating = False ow = Cells(Rows.Count, "M").End(xlUp).Row For r = ow To 1 Step -1 If Cells(r, "M") = 1224 Or Cells(r, "M") = 1228 Or Cells(r, "M") = 1232 Then Rows(r).Delete Next Application.ScreenUpdating = True End Sub[/syntax]
Musisz zrobić funkcję do zaznaczania elementów i wyszukiwania ich w tablicy oraz przycisk(ale nie koniecznie, bo można wykorzystać do tego celu guzik oblicz z pewnym warunkiem) do sumowania przeliczonych wartości
Dobrze by było jak te formuły miały charakter stały, uwzględniając np. zmianę dnia w tygodniu (ponieważ inaczej rozlicza się godziny w dzień roboczy, a inaczej w święto). Zrób dodatkową kolumnę, którą będziesz wyróżniał dzień wolny/sobota-niedziela/święto od normalnego dnia pracy. Wtedy wartość z tej kolumny ta może posłużyć za warunek do zmiany sposobu...
Tak, teraz dopiero wiadomo, o co chodzi. Podaję dwie propozycje formuł. Pierwsza w "starym stylu" bez funkcji LAMBDA: [syntax=text]=UNIKATOWE(FILTRUJ($K$5:$K$... z wykorzystaniem funkcji pomocniczej LAMBDA: [syntax=text]=LET(dane;$K$5:$K$24;UNIKAT...
Może to będzie pomocne? [url=http://www.elektroda.pl/rtvforum/to...
[syntax=vbscript]Sub AF() Sheets("A").Range("A4:R200").Clear For x = 2 To Sheets.Count For y = 4 To 300 If Sheets(x).Cells(y, "O") >= -30 Then nw = Sheets("A").Cells(Rows.Count, "O").End(xlUp).Row + 1 Sheets(x).Rows(y).Copy Sheets("A").Range("A" & nw) End If Next Next End Sub [/syntax]
Sposobów jest kilka. W Twoim przypadku najprościej oprzeć się na wyszukaniu obu spacji. Służy temu funkcja ZNAJDŹ(szukany_tekst;obejmujący_tekst; Trzeci argument jest opcjonalny. Umieszczamy kody (Np X:-324 Y:43 Z:5433) w A1, funkcja: =ZNAJDŹ(" ";A1) zwróci nam liczbę 7, znamy położenie spacji Nr1. Podstawiając tę samą funkcję jako 3 argument znajdziemy...
Jako mod: Proszę stosować się do [url=https://www.elektroda.pl/rtvforum/t... (post poprawiłem). Jako user: Zły warunek. Sprawdzasz "i" - Nr kroku pętli zawsze będzie liczbą, a nie zawartość cells(i, kolumna).
A można też bez kolumn dodatkowych, tylko formułka formatowania nieco dłuższa: [syntax=text]=JEŻELI($A2=""; ""; MOD(SUMA.ILOCZYNÓW(--($A$1:$A1<>$A...
chcę to zmienić na przycisk To proponuję wykorzystanie kodu typu :spoko: : [syntax=vbscript]Public Sub Powiel() i = 2 Do Until IsEmpty(Cells(i, 7)) If Cells(i, 7).Value > 1 Then a = i + 1 b = a + Cells(i, 7).Value - 2 Range("A" & i & ":K" & i).Select Selection.Copy Range("A" & a & ":A" & b).Select Selection.Insert Shift:=xlDown Range("G" & i & ":G"...
Sorki, zmyliło mnie "o identycznych 4 kolumnach" ;) Użyj dwóch kolumn pomocniczych np. E, gdzie formuła =A1&B1&C1&D1 i F =JEŻELI(LICZ.JEŻELI(E:E;A1&B... duplikat";"")
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...
[syntax=vbscript]For y = 1 To ile - 1[/syntax]
Witam serdecznie, Uprzejmie proszę o pomoc w napisaniu makra, które miałoby w tym samym arkuszu działać w następujący sposób [syntax=tex]stan przed: a b c d e f g h wiersz i xxxx 23 wiersz i+1 xxxx 23 stan po: a b c d e f g h wiersz i xxxx 23 wiersz i+1 xxxx 100[/syntax] Chodzi o to, żeby makro porównywało 2 sąsiednie wiersze i jeśli w kolumnie A będzie...
Mam jednak pytanie jak to się dzieje że wkleja to w odpowiednie miejsce? Cały mechanizm makra polega na przechodzeniu krokowym (założyłem wstępnie od wiersza 1 do 10 - ale to można odpowiednio dostosować do potrzeb) wzdłuż kolumn arkusza 1 i porównywaniu wartości z odpowiednimi komórkami arkusza 2 :D Jeśli makro napotka w którymś wierszu inne wartości...
A ja potrzebuję, żeby wklejając 2 wiersze niżej wartość była "A3+B3". Jak to zrobić? Chodzi ci o A$2+B$2
O rety, ale mam zaskok :) W załączniku rozwiązanie z kolumną pomocniczą.
Tworza arkusz pomagający sterować stadem zwierzat i nie potrafie stworzyć fomuły jak dla mnie bardzo skomplikowanej, otoż: Problem w ogole dootyczy 2 wierszy i jednej komorki w ktorej ma byc wpisana formula: komórka to: D30 (to co w niej się znajduje na tę chwilę jest wynikiem działania formuły =JEŻELI(D13="+";D7;"") a wiersze to: D49:R49 i drugi: D50:R50...
Zostałem poproszony o odpowiedź czy rozwiązałem swój problem. Otóż nie. Ale to było dawno temu i już nie nadaje się nawet do rozwiązywania. Dziękuję za wszystkie próby pomocy :)
Spróbuj coś takiego :-) [code][syntax=vbscript] Sub awaria() Dim fileName As Workbook Dim path As String Dim sheetName As String Worksheets("Arkusz1").Select path = "C:\Users\Marek\Desktop\dane ostateczne.xlsm" Set fileName = Workbooks.Open(path) ThisWorkbook.Activate For wiersz = 2 To 22 sheetName = Range("J" & wiersz) If sheetName <> ""...
Żaden kłopot. Jeśli chodzi o zera, to najprościej wyłączyć wyświetlanie w opcjach: http://obrazki.elektroda.pl/6240352000_1... W komórkach G34:G40 zrób podobnie jak w G41 =JEŻELI(SUMA(G2;G10;G18;G26)...
Zmień kod np tak :spoko: : [syntax=vbscript]Sub Add_ret_Click() Dim rngTmp As Excel.Range Dim rngBlanks As Excel.Range Set rngTmp = Range("B24:C24") 'Tw?j obszar On Error Resume Next Set rngBlanks = rngTmp.SpecialCells(xlCellTypeBlanks) On Error GoTo 0 If Not rngBlanks Is Nothing Then MsgBox "Uzupe?nij puste kom?rki" & vbNewLine & "pusta kom?rka...
To może tak: [syntax=vbnet]Sub Makro1() ' Dim ox, ox2 As Integer ' Application.ScreenUpdating = False Range("A2").Select While ActiveCell.Value <> "" If ActiveCell.Value <> ActiveCell.Offset(-1, 0) Then ActiveCell.Offset(1, 0).Activate Else ox = 1 ox2 = 1 While ActiveCell.Offset(-1, ox).Value <> "" ox = ox + 1 Wend While ActiveCell.Offset(0,...
dodanie takiego makra jak poniżej, nie wyświetla mi napisu "hello" Popełniasz błędy: - wprowadzając "prywatne makro arkuszowe" do modułu uniwersalnego :cry: , jeśli to samo makro wkleisz do modułu arkusza "zamówienia" i dokonasz zmiany treści komórki - zamiast ujętej tam formuły wprowadzisz tam 1 - to uzyskasz Twój pożądany efekt - "hello" :D ; - nie...
Teraz wszystko jasne. [syntax=vbscript]Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 2 Then Application.ScreenUpdating = False Plik = "C:\PlikiSpraw\" & Range("A" & Target.Row) & ".xlsx" If Dir(Plik) <> "" Then Rows(Target.Row).Copy Set s = Workbooks.Open(Plik) nw = s.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Row...
No cóż, opis nie jest bardzo czytelny, ale jeśli taki miał być efekt: https://obrazki.elektroda.pl/4588789900_... to kod, który to zrealizuje może wyglądać następująco: [syntax=vbscript] Sub FZ() r = 1 'kolejny sprawdzany wiersz (row) rstart = 0 'numer pierwszego w serii wiersza do którego wklejam wartości, jednocześnie numer wiersza...
Jeśli numeracja ma się zmieniać, to formuła może być np. =WIERSZ(A1)&"|"&A1 gdzie A1 jest adresem pierwszej komórki. Ale Pan nie napisał, że numer ma się zmieniać.
w G2 wpisz data w formacie "d"; w J2 =G2+1, w M2 =J2+1 itd. [syntax=vb]Sub nastepny() ActiveSheet.Copy after:=ActiveSheet With ActiveSheet num = Mid(.Name, 3, 2) .Range("E4") = "z T-" & num num = Format(Val(num + 1), "00") .Name = "T-" & num ow = .Cells(Rows.Count, 1).End(xlUp).Row .Range("g2") = .Range("y2").Value + 1 .Range("E6:E" & ow) = .Range("D6:D"...
Napisałem Ci w kodzie gdzie wstawić komendy wysyłania i odbierania. Colbyte to "wędrujące zero" w zakresie od bitu 0 do bitu 3 (kolumny) a Rowbyte to odczytana wartość z wierszy. Pokombinuj sam - więcej się nauczysz. :) Jak już naprawdę nie będziesz wiedział to stopniowo będę Ci pomagał.
Dzień dobry, Jest kilka sposobów rozwiązania, w pliku podałem 3 warianty do wyboru z wykorzystaniem funkcji INDEKS, PRZESUNIĘCIE i ADR.POŚR. Składnia jest następująca: =PRZESUNIĘCIE(początek_zakresu;skok*(WIE... =INDEKS(zakres;skok*(WIERSZ()-nr_pierwsz... =ADR.POŚR(litera_kolumny&skok*(WIERSZ()-...
wtedy zwykle wyszukaj.pionowo [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")) .Cells(r, "A") = Application.VLookup(.Cells(r, "A"), nazw, 2, 0) Next End With End Sub [/syntax]
W arkuszu 1 w wierszach od 2 do 30 brak formuł W arkuszu 2 w tabeli w kolumnie "J" muszą być wartości większe niż zero to w wierszu8 i 9 będą wartości. Pozdrawiam
Świetnie, o to mi chodziło :) Dzięki!
Jeżeli nie chcesz robić dodatkowego zapytania SQL, które policzy te sumy "prosto z bazy", to zastosuj tablicę w PHP. W PHP indeksami tablicy mogą być zarówno liczby jak i ciągi znaków. Możesz np. zastosować taki kod :[syntax=php]$tablica[$row[typ]][0]=$row... $tablica[$row[typ]][1]=$tablica[$row[typ... + ($row[ilosc] * $row[cena]); [/syntax]Taki...
Zmienit 'For i = 0 To nrep - 1' na 'For i = 1 To nrep - 1'
Można oczywiście użyć 'InStr', ale to zupełnie inna konstrukcja wyrażenia. Natomiast tu prościej zamiast operatora "=" użyć operatora "Like". Operator "=" nie uwzględnia znaków zastępczych, a "Like" - tak. [syntax=vbscript]If Cells(i, 15).Value Like "*otow*" Then[/syntax]Tylko nie rozumiem po co tam był ten trzeci cudzysłów. Ale generalnie formatowanie...
Dziękuję bardzo. Dokładnie o to mi chodziło :D
Sprawdź czy o to chodziło. Jeśli faktycznie druga procedura ma kopiować "wiersze powyżej", to oczywiście nie zawsze będzie ich 15, bo wyszukiwana wartość może zostać odnaleziona w wierszu, powyżej którego nie ma 15 wierszy. Załączona procedura w takich przypadkach kopiuje wartości począwszy od wiersza nr 3 do wiersza wyszukanego. [syntax=vbscript] Option...
Czyli ustawiasz kursor w którymś z wierszy, naciskasz przycisk i ma się dodać wg wartości w tym wierszu? Oj, żebyś żonie nie uprzykrzył ;) Nie rozsądniej byłoby zrobić to za pośrednictwem formularza? Wybierasz z pól kombi (stan w podglądzie) i dodajesz pod przyciskiem. Update 7:50 Coś jak w załączniku. W ostateczności wykorzystaj makra...
[syntax=vbnet]Sub Kopiuj5() Application.ScreenUpdating = False Sheets("Arkusz1").Select ow = Cells(Rows.Count, "A").End(xlUp).Row nw = ow + 1 For x = 2 To ow If Cells(x, "C") > 1 Then Range(Cells(x, "A"), Cells(x, "C")).Copy Range(Cells(nw, "A"), Cells(nw + 4, "C")).Select ActiveSheet.Paste Range(Cells(nw, "C"), Cells(nw + 4, "C")) = 1 nw = nw + 5 End...
Proszę o pomoc w napisaniu kodu który będzie sprawdzał wartość w każdej komórce w wierszu dwa z każdą komórką w wierszu 3 i w sytuacji kiedy liczba się powtarza w kolejnym losowaniu zliczał w kolumnie W przy odpowiedniej wartości ilość powtórzeń. Po zajrzeniu do pliku lepiej będzie można zrozumieć o co chodzi.[syntax=vb] Public Sub Pomnoz() Dim Komorka...
Kod który Ci podawałem ostatnio działa tylko dla jednej kolumny, takiej samej jak Target.Column. U Ciebie nie działa bo funkcja Intersect() [zwracająca wspólną część dwóch zakresów] poza 15-tą kolumną jest teraz wywoływane na nie takich zakresach jak trzeba. Zmień początek tego makra na taki: [syntax=vb]Private Sub Worksheet_Change(ByVal Target As Range)...
np. tak: Dim koniec as integer koniec=cells(9, 24).value '<--- pobiera wartość z X9 jako koniec for x=1 to koniec Tu jest to, co ma być w pętli next x
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.
Nie wiem tylko czy to będzie mieć zastosowanie raz do np 1000 wierszy a raz np 600 czy 500? bo ilość danych będzie zmienna Tak będzie mieć
Podobnie jak powyżej. Dodaj kolumnę obok kolumny B i zastosuj taką formułę. W wyniku będziesz miał wartość milisekund. Sortujesz wszystkie wiersze rosnąco względem tej kolumny i po sprawie. =(B3*86400-INT(B3*86400))... Plusem tego rozwiązania jest dokładna wartość milisekund, a nie zaokrąglona jeśli to istotne.
:arrow: tagy Słuszna koncepcja. Ale jeśli "dziura" jest wewnątrz (dalsze wiersze zawierają już coś), to wartość wpisana zostanie w ostatnim wierszu. Sprawdzałbym raczej od góry Cells(Cells(3, 3).End(xlDown).Row + 1, 3) = InputBox("Podaj cos")
Nie bardzo rozumiem, gdzie w tym jest ukryty problem. Zerknij na arkusz i napisz co jest nie tak:
Układ powinien być zasilany z zewnętrznego zasilacza 5V, min. 600mA. Propozycja schematu w załączniku. Jako driver wierszy proponuję ULN2803 (8 Darlingtonów NPN), driver kolumn to UDN2981. Wartości oporników w wierszu są dość małe, gdyż przy prądzie 100mA ULN2803 ma napięcie nasycenia CE rzędu 0,85V, a UDN2981 przy prądzie ok. 500mA będzie miał 1,9V....
Witam aby w kolumnie D dodało ilość danego produktu do istniejącej już liczby nawet, jeśli inny kolor i kod2? aby wpisało do kolumny b i c (arkusza 1) wartości z odpowiedniego wiersza z arkusza 2 tak samo?
Dane źródłowe są w zakresie AG7:AG27 i te komórki można klikać wielokrotnie, bo dane są kopiowane, a nie przenoszone. Jeśli zakres docelowy jest początkowo pusty, kopie są umieszczane od komórki J4 w dół. Nie dałem ograniczenia na wierszu 14., bo nie zostało opisane zachowanie procedury w tym momencie. Jeśli wypełniona zostanie komórka J14 i użytkownik...
Jak przenieść wiersze z arkusza1 do arkusz2 jeśli w kolumnie "Stan" pojawi się wartość "Zakończony". Po przeniesieniu wierszy do arkusza2 w arkuszu1 wiersze mają być usunięte
Autorze, formuły działają, tylko je bezrefleksyjnie przekleiłes nie patrząc na kontekst. W mojej nie musisz używać dodatkowej kolumny ekstrahującej wartość godziny. Chcesz policzyć wszystkie wiersze użyj =SUMA.ILOCZYNÓW(A:A*(GODZINA(C:C)>=8)...
Te warunki są bez sendu w ogóle. logiczne na pewno działają. wystarczy jak napiszesz if ($i == 2) echo "dwa"; if ($i == 3) echo "trzy"; == jest "ostrym" warunkiem. Zadziała tylko w przypadku rózwności. poeksperymentuj troche. Wstaw sobie wyświetlanie zmiennych abyś wiedział co się dzieje. Przed zliczaniem ilości wierszy zainicjalizuj zmienną wartością...
Witam, Nagłówek nie jest kopiowany, jedynie dane. Najlepiej w kodzie po utworzeniu nowego arkusza przekopiuj go tak: wsSheet.Range("A1:C1"&... Destination:=wbBook.Sheets(CStr&... a żeby nie kopiować danych od pierwszego wiersza, zmień w kodzie wartość początkową zmiennej wiersz...
Pierwsze pobranie powinno nastąpić w pętli Numerować powinieneś na podstawie licznika pętli w , jest to bardziej logiczne. Jeśli ustaliłeś w=3 (wiersz 3), to wartość komórki A w tym wierszu powinna być ustawiona z warunkowym wykonaniem jako [syntax=vb]If a<>0 Then Cells(w, 1).Value = w-2 [/syntax] w momencie pobrania zerowej wartości, nie nastąpi...
Spróbuj jeszcze makra działającego na nieco innej zasadzie. Operacje na arkuszu są wykonywane w całych zakresach kolumnowych, a nie na pojedynczych komórkach. Napisz jaki będzie czas wykonania w tym przypadku. [syntax=vbscript]Sub Kopiowanie2() ' zakres źródłowy Worksheets("Arkusz2").Activate Dim ostw As Long Dim src1, src2, src3 ostw = Cells(Rows.Count,...
Może coś takiego: [syntax=vb] Sub ukryjWiersze() Dim i As Integer Dim selRange As String For i = 60 To 70 selRange = "A" & i If range(selRange).Value = 0 Then range(selRange).Select Selection.EntireRow.Hidden = True End If Next i End Sub [/syntax]
Excel nie służy do obrabiania dużej ilości danych, zrób to w Accessie...
Co tu tłumaczyć wrs = Columns(2).Find(what:=Ra... lookat:=xlWhole).Row Rows(wrs).Delete 'Rows(wrs).ClearContents 'w zależności od sensu słowa "wykasować" i wszystko jasne... Gdyby nie znalazł, warto ten fakt zakomunikować. Np On Error Resume Next wrs = Columns(2).Find(what:=Ra...
Robisz zmienną, która odczytuje z określonej komórki wartość czyli ilość wierszy do wklejania i kolejne zmienne z wartościami do wklejenia. Wierszy = Cells(wiersz, kolumna).Value
W tym arkuszu zawsze jest jeden wiersz i wiele kolumn w kazdej z nich sciezka do plikow bibliotek i rysunkow. No, i to wiele zmienia... Źle zrozumiałem Twoje intencje... W takim razie zmień sobie SQLa na: Tzn. w excelu dodanie wartości do kolejnego wiersza nie jest oczywiste(automatycze) ; D tak jak w Twoim skrypcie W Accesie też nie jest to ani automatyczne,...
Możesz użyć https://onlinetools.com/hex/add-hex-numb... Każda wartość w osobnym wierszu
Np wykorzystując resztę z dzielenia Nr wiersza przez 8. Spróbuj =SUMA.ILOCZYNÓW((C11:C1000&l...
Bo cały czas dajesz klaw=, co powoduje nadpisanie wartości zmiennej i jeśli wszystko jest w ostatnim wierszu na 0 to zmienna niezależnie od tego co się dzieje wcześniej ma wartość zero. Poza tym nie musi być ona opatrzona atrybutem volatile. Wystarczy, że dasz jej na początek wartość 0, a potem zamienisz klaw= na klaw +=
Odwołanie zewnętrzne robisz np tak. [syntax=vb]=SUMA('C:\Raporty\[Budżet.xls... Równie dobrze możesz zrobić wyszukiwanie. Musisz. 1. Znać nazwy arkuszy na etapie projektowania arkusza zbiorczego 2. Zadbać o ich istnienie, format itd. Ten sposób dotyczy arkuszy, które są ZAMKNIĘTE!. p.s. Ponowię prośbę do autorów postów dotyczących...
Witam serdecznie, mam napisane makro, które sumuje mi unikatowe wartości z kolumny w "Arkusz1" o nieskończonej liczbie wierszy i pokazuje je w arkuszu "Suma" w kolumnie C. W kolumnie D są natomiast wartości do porównania z kolumną C. Jeśli wartości wierszy z kolumn C i D są różne to odpowiednia komórka w kolumnie C ma pojawić się na czerwono. Nie wiem...
Masz w funkcji WYSZUKAJ.PIONOWO zablokowany dolarkiem ($) zakres przeszukiwania do wiersza 180.
warto wierszu ilość znaków wierszu ipconfig warto wierszu
wyważarka wirników prostownik pierwotnej hamować odzysk energia
numer seryjny napięcie drugiej sondy lambda
Czujnik pogody Baldr zawyża temperaturę zewnętrzną - przyczyny i rozwiązania Blokada immobilizera w Skodzie Fabii - jak usunąć?