Prosím o radu ohledně polí:
- mám dynamické "pole()"
- nevím, kolik řádků bude pole mít - řádek chci přidat až po splnění jistých podmínek
- představa je, že nakonec pole bude jako tabulka o rozměrech 1000 řádků a 12 sloupců [pole(1000,12)], a po pravdě budu pole taky vkládat jako tabulku do "dim oblast as range" tímto způsobem: set oblast.value = pole
Původní představa byla, že u pole budu měnit počet řádků a sloupce budou pořád stejné, tedy: pole(početřádků, 12). Jak jsem říkal, chci řádek přidat až po splnění jistých podmínek - jakmile se podmínka splní, rozšířím si rozměr řádků pole způsobem:
ReDim Preserve pole(ubound(pole,1)+1, 12).
Ale narazil jsem na problém "subscript out of range" a zjistil jsem, že při použití Preserve mohu měnit jen poslední rozměr pole - v tomto pojetí rozměr sloupců. Mimochodem, tohle pan Walkenbach zapomněl v jinak dobré knize uvést :-)
Poraďte mi, prosím, jak z toho ven, co je nejlepší řešení(?):
a) překopat všechny pole tak, že prohodím rozměry - to jde, ale už jsem toho hodně napsal a strávím nad tím spoustu času
b) před rozšířením pole pomocí Preserve pole přetransponovat (předpokládám, že to jde - napadlo mě to až teď při psaní tohoto dotazu)
c) uložit pole do listu, předimenzovat bez Preserve a pak zase načíst zpět
d) ... poraďte další způsob(y) nebo metody
Díky moc.
P.S. nejsem programátor, tak mě nesekýrujte, ale poraďte mi :-)
A na dotaz, proč jsem rovnou neuvažoval rozměry pole obráceně: pole(sloupce,řádky), tak je to proto, že jsem vycházel z označení oblastí, kdy se napřed taky uvádí řádky a pak sloupce - krom toho jsem chtěl pole vkládat jedním příkazem jak jsem naznačil.
VBA Excel - ReDim Preserve
VBA Excel - ReDim Preserve
diky všem za rady
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 16
- 6885
-
od mirekol
Zobrazit poslední příspěvek
20 říj 2023 08:31
-
- 1
- 726
-
od Grimm
Zobrazit poslední příspěvek
12 bře 2024 21:43
-
- 3
- 2314
-
od Story-Long
Zobrazit poslední příspěvek
14 srp 2023 10:11
-
- 5
- 2853
-
od mmmartin
Zobrazit poslední příspěvek
13 črc 2023 18:44
-
- 2
- 2043
-
od honzzicek
Zobrazit poslední příspěvek
01 črc 2023 08:57
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti