< návrat zpět

MS Excel


Téma: Posunutí řádků v editoru VBA rss

Zaslal/a 15.7.2020 7:49

Zdravím,

chtěl bych Vás požádat o pomoc. Mám tabulku, kde používám jednoduché vzorce, něco v tomto smyslu:


Range("B3").Value = Range("B3").Value - Range("D3").Value
Range("B4").Value = Range("B4").Value + Range("D4").Value
Range("B5").Value = Range("B5").Value * Range("D5").Value
Range("B6").Value = (Range("B6").Value + Range("C6").Value) * Range("D6").Value


Co bych potřeboval, tak když vložím do sešitu nový řádek, třeba číslo 5, pro který budu v editoru zapisovat nový vzorec, tak aby mi editor řádky přečíslovali také. (Buňky na řádku 5 posunout na řádek 6 a na řádku 6 posunout na řádek 7.)

Přepisovat a upravovat potom vzorce by bylo hrozně složité, neboť pracuji třeba s 80 řádky.

Snad jsem to napsal srozumitelně.
Jde to nějak?

Děkuji.

Zaslat odpověď >

#047317
elninoslov
To nie sú vzorce, ale riadky kódu.
Jedine ma napadá len tak z hlavy niečo v zmysle:
R = 3
Cells(R, "B").Value = Cells(R, "B").Value - Cells(R, "D").Value: R = R + 1
Cells(R, "B").Value = Cells(R, "B").Value + Cells(R, "D").Value: R = R + 1
Cells(R, "B").Value = Cells(R, "B").Value * Cells(R, "D").Value: R = R + 1
Cells(R, "B").Value = (Cells(R, "B").Value + Cells(R, "C").Value) * (Cells(R, "D").Value): R = R + 1

aj keď najlepšie by bolo, pridať prílohu a vysvetliť to tam, či sa to nedá urobiť aj inak, lebo z tohto nevieme presne čo potrebujete robiť.citovat
icon #047318
eLCHa
Máte v kódu tvrdé odkazy Range("B3")

Dalo by se to vyřešit pojmenovanými buňkami, pak by kód "poznal", že se buňka posunula.
Ale píšete o 80 buňkách, takže vytvářet 80 názvů je nepraktické.

Pak je tu možnost skrytého sloupce, kde vložíte informaci, co se má s buňkou dělat. Toto bude reagovat na vložení řádku (celého). Takt nějak bych to asi udělal já.
Potom by vám stačil krátký kód, který provede operaci podleidentifikátoru.

Takže na vaši otázku, ano jde to.citovat
#047319
avatar
Děkuji za pomoc,

zde posílám příklad, který sice není nejlepší, ale snad z něj bude vše jasné. Veškeré poznámky jsem pro přehled napsal do listu a do kódu.

http://leteckaposta.cz/225341436citovat
#047334
elninoslov
Čistý nezmysel. To chcete upravovať aj riadky v liste, aj zároveň riadky v kóde, a to tak, že sa vždy spoľahnete na to, že sa nepomýlite? A to nevravím o logike veci, keďže výrobky iba vyrábate na sklad, no nevyskladňujete. Tie "vzorce", ktoré niesú vzorcami ... to vážne keď máte na sklade 100 pomarančov a vyrobíte ďalšie 2 pomaranče, tak na sklade ich bude zrazu 200 ?

Ak chcete urobiť normálny odpis skladu, tak uvádzajte príjem, výdaj (započítajte poškodenie) a stav sa bude dať predsa dopočítať univerzálnym riadkom/riadkami kódu, bez ohľadu na pozíciu. Ak nie, musíte uviesť skutočné výpočty, čo s čím a prečo počítate. Ak máte 4 druhy absolútne iných výpočtov (čo nesedí s načrtnutou prílohou), tak si zaveďte tabuľku, kde bude uvedené aký druh výpočtu platí pre aký výrobok, a podľa tejto tabuľky sa určí spôsob výsledku.

Tak či tak, ja osobne nerozumiem o čo iné by tu mohlo ísť.citovat
#047338
avatar
A spusti makro
Příloha: zip47338_necotake.zip (11kB, staženo 20x)
citovat

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje