Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  3 4 5 6 7 8 9 10 11   další » ... 69

A proč ta šaškárna s trojicí buněk?
Vždyť se stejně obarví všechny buňky větší jak 1.

Ne, těch změn v kódu bylo více

ad 19:25
Konkrétně Makro1 předává hodnotu Makru2 né naopak.
Pokud chceš, aby byla proměnná dostupná pro více procedur a byla dostupná i po ukončení některé z nich, tak ji deklaruj na začátku modulu (mimo jakoukoliv proceduru).
https://macerayarislari.com/cs/300-examples/300-excel-vba-byref-and-byval.html
https://www.youtube.com/watch?v=OY6vA_3w96M

ad 20:36
List3 a List4 je tzv CodeName listu, který si můžeš změnit na něco smysluplnějšího v okně Properties např wsVstupy a wsICA.
Fór je v tom, že tento název je dostupný pouze v editoru VBA a je nezávislý na názvu (Name) listu, který se Ti zobrazuje na oušku.

Samozřejmě můžeš v kódu místo Codename List3 použít Worksheets("Vstupy") a ano je potřeba provést změnu v celém kódu.
Pokud ale uvedeš jméno listu "natvrdo" do kódu [(Worksheets("Vstupy")] a poté se rozhodneš Ty nebo někdo jiný název listu změnit, kód nebude funkční a budeš muset provést úpravu kódu.
Pokud budeš používat CodeName listu, tento problém odpadá.

ad 21:11
soubor upraven

????
Jaký userform? Nic takového v souboru není.
Nebo motáš několik věcí dohromady?
Nevidím důvod, proč by ten řádek kódu neměl být funkční pod UserFormem. Jakou hodnotu má proměnná RowsA?

Napadlo mě řešení pomocí polí, jednotlivá data z listů se načtou do polí, které se v cyklu porovnají mezi sebou. Pokud je splněna podmínka, do dalšího pole se zapíše požadovaná hodnota, toto pole se nakonec vloží na příslušnou pozici do listu.

Nijak.

=KDYŽ(SUMA(D5:N5)<>0;SUMA(D5:N5);"")

Makro MojeMakro pracuje se dvěma parametry - jméno a datum.
Sub MojeMakro(ByRef Jmeno As String, ByRef Datum As Date) Které mu předá kód uvedený v modulu prvního listu.
Private Sub Worksheet_Change(ByVal Target As Range) Target je některá z kontrolovaných (spouštěcích) buněk prvního listu ve sloupci E - tedy ta, do které zapisuješ datum např. E5
Tedy volání
Call MojeMakro(Target.Offset(, -3).Value, Target.Value)Target.Offset(, -3).Value = jméno (E5 posunutá o 3 doleva, tedy hodnota buňky B5)
Target.Value = datum (hodnota buňky E5)
Tedy pro buňku E5
Call MojeMakro(Renata, 12.10.2023)

http://gymzv.sk/~vyuka/informatika/excel/excelentne/chipex05/08/excel_vba_funkce.html
zaměř se na "Předávání parametrů obecně"

rng je pouze jméno proměnné, můžeš si jí nazvat jak chceš třeba TatkaSmoula

Resize, offset viz
https://office.lasakovi.com/excel/vba-listy-bunky/excel-vba-resize-offset/#99

Třeba takto: viz soubor
Dej si pozor na zápis dat, jména byla zadána s počáteční mezerou - odstranil sem.

Vyzkoušej tohle:
? Application.WorksheetFunction.VLookup("15.2", Range("Kalendář1"), 2, 0)
? Application.VLookup("15.2", Range("Kalendář1"), 2, 0)

upraveno

Například:

Cells(1, 2).Value = Year(Date)

Řešení pomocí makra. Oba soubory musí být ve společné složce, aby na sebe "viděly" a nebylo nutné při každém spuštění zdrojový soubor vybírat ručně.

Ne Jedině použít vlastní UserForm.


Strana:  1 ... « předchozí  3 4 5 6 7 8 9 10 11   další » ... 69

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Čas od do

lubo • 19.4. 16:30

Makro smyčka

MilanKop • 19.4. 10:46

Makro smyčka

elninoslov • 19.4. 9:02

Čas od do

elninoslov • 19.4. 8:46

Čas od do

jarek1111 • 18.4. 13:46

Čas od do

lubo • 18.4. 11:13

Čas od do

jarek1111 • 18.4. 8:32