Vba ΠΌΠ°ΡΡΠΈΠ²Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅: VBA Excel. ΠΠ°ΡΡΠΈΠ²Ρ (ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠ΅, ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠ΅, Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅)
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². VBA Π΄Π»Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ²
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². VBA Π΄Π»Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ²
ΠΠΈΠΊΠΈΠ§ΡΠ΅Π½ΠΈΠ΅
VBA Π΄Π»Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ²
ΠΠ°ΠΌΠΌΠΈΠ½Π³Ρ Π‘ΡΠΈΠ²
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ°ΡΡΠΈΠ²ΠΎΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠ΄Π½ΠΎΡΠΎΠ΄Π½ΡΡ
ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ², ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΡ
Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅. ΠΠ°ΡΡΠΈΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ AutoCAD β ΡΡΠΎ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ
Π½Π° ΡΠ°Π²Π½ΠΎΠΌ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠ²ΡΠ·Π°Π½Ρ ΡΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ
8.1.4. Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
8.1.4. Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΡΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΡΡΠΈ β Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ!ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΡΠ»ΡΠΆΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° <=>. ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² Π΄ΡΡΠ³ΠΈΡ
ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°Ρ
, ΡΠΎ Π΅ΡΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ -1 (ΠΌΠ΅Π½ΡΡΠ΅), 0 (ΡΠ°Π²Π½ΠΎ) ΠΈΠ»ΠΈ 1 (Π±ΠΎΠ»ΡΡΠ΅). ΠΠ΅ΡΠΎΠ΄Ρ == ΠΈ != ΠΎΠΏΠΈΡΠ°ΡΡΡΡ Π½Π°
8.1.22. Π§Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
8.1.22. Π§Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π΅ΡΡΡ Π΄Π²Π° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΈΠ· Π½ΠΈΡ
ΡΡΠ΅ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈΠ· Π΄Π²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π²Π·ΡΡΡΡ
ΠΈΠ· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΡ
ΠΏΠΎΠ·ΠΈΡΠΈΠΉ ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ². Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π²Π΅ΡΡΠΈΡΡ
Ruby ΠΌΠΎΠ΄ΡΠ»Ρ Enumerable ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ zip:a = [1, 2, 3, 4]b = [Β«aΒ», Β«bΒ», Β«cΒ», Β«dΒ»]Ρ =
ΠΠΠΠΠ 15. CIL ΠΈ ΡΠΎΠ»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΎΡΠ½ΡΡ Π±Π»ΠΎΠΊΠΎΠ²
ΠΠΠΠΠ 15. CIL ΠΈ ΡΠΎΠ»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΎΡΠ½ΡΡ
Π±Π»ΠΎΠΊΠΎΠ²
Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΡΡΠ°Π²ΠΈΡΡΡ Π΄Π²Π΅ Π·Π°Π΄Π°ΡΠΈ. Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ Π³Π»Π°Π²Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ° ΡΠ·ΡΠΊΠ° CIL (Common Intermediate Language β ΠΎΠ±ΡΠΈΠΉ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΡΠ·ΡΠΊ) Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, ΡΠ΅ΠΌ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ
Π³Π»Π°Π²Π°Ρ
. Π§Π΅ΡΡΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΡ, ΠΏΡΠΈ
Π£ΠΠΠΠΠ’ΠΠΠ ΠΠΠ‘Π‘ΠΠΠΠ
Π£ΠΠΠΠΠ’ΠΠΠ ΠΠΠ‘Π‘ΠΠΠΠ
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π³Π». 9, ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π² ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌΡΡ
Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ
Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π°Π΄ΡΠ΅ΡΠ°, ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π°Π΄ΡΠ΅ΡΠ°
ΠΠ»Π°Π²Π° 2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²
ΠΠ»Π°Π²Π° 2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²
2.0. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠΎΠ³Π΄Π° iPhone ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π½Π° ΡΡΠ½ΠΊΠ΅, ΠΎΠ½ ΠΏΠΎΠΈΡΡΠΈΠ½Π΅ Π·Π°Π΄Π°Π» ΡΡΠ°Π½Π΄Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ iOS Π±ΡΠ»ΠΈ ΠΈ ΠΎΡΡΠ°ΡΡΡΡ ΠΏΠΎΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ β Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°
2.4. ΠΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄ΡΡΠ³ ΠΊ Π΄ΡΡΠ³Ρ
2.4. ΠΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄ΡΡΠ³ ΠΊ Π΄ΡΡΠ³Ρ
ΠΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»ΡΡΡ Π΄ΡΡΠ³ ΠΊ Π΄ΡΡΠ³Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²ΠΈΠ΄Ρ, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΎΡΠΎΠΉ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΠΌΠΎΠΆΠ½ΠΎ
Π’ΠΈΠΏΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Π’ΠΈΠΏΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Firebird ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΠ΄Π½ΠΎΡΠΎΠ΄Π½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Ρ
ΡΠ°Π½ΠΈΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ
Π² Π²ΠΈΠ΄Π΅ Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΡΡ
, ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅. Firebird ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΠ΅Π»ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ,
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ°ΡΡΠΈΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ Π΄ΠΎΠΌΠ΅Π½ (Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ CREATE DOMAIN) ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΡΠΎΠ»Π±Π΅Ρ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ CREATE TABLE ΠΈΠ»ΠΈ ALTER TABLE. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π° ΠΈΠ»ΠΈ ΡΡΠΎΠ»Π±ΡΠ° ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎΡ
ΠΎΠΆΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Π·Π΄Π΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ°ΡΡΠΈΠ²ΠΎΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠ΄Π½ΠΎΡΠΎΠ΄Π½ΡΡ
ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ², ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΡ
Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅. ΠΠ°ΡΡΠΈΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ AutoCAD β ΡΡΠΎ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ
Π½Π° ΡΠ°Π²Π½ΠΎΠΌ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠ²ΡΠ·Π°Π½Ρ ΡΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ
ΠΡΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ²
ΠΡΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ²
ΠΡΠΌΠ΅ΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π²ΠΎΠΆΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ Ρ ΡΡΠ°ΡΡΠΈΠ΅ΠΌ ΡΡΡΠ»ΠΎΠΊ ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡ Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΎ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΡΡΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ² Π² Π½Π°ΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.ΠΡΠ²Π΅Ρ β ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈ
Π Π΅Π²ΠΈΠ·ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
Π Π΅Π²ΠΈΠ·ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ°Π±ΡΠΎΡΠΎΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ARRAY Π΄Π°Π½ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π»Π΅ΠΊΡΠΈΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π΄Π°ΡΡ Π΅ΠΌΡ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠ΅Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅. Π€ΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ»ΠΎΠ²ΠΈΠΉ, ΠΏΠΎΡΡΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΈ ΠΈΠ½Π²Π°ΡΠΈΠ°Π½ΡΠ°.ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΉ, Π½ΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ ΡΡ
Π΅ΠΌΠ°ΡΠΈΡΠ½ΡΠΉ
ΠΠ²ΠΎΠ΄ ΠΈ Π²ΡΠ²ΠΎΠ΄ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ»Ρ Π²Π²ΠΎΠ΄Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ InputBox ΠΈ Cells, Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π½Π° ΠΏΠ΅ΡΠ°ΡΡ β ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ MsgBox.
ΠΠ²ΠΎΠ΄ ΠΈ Π²ΡΠ²ΠΎΠ΄ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΡΠΎΠ±ΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΡΠΈΠΊΠ». Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠΈΠΊΠ»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΡΠΎΠ»Π±ΡΡ. ΠΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ Π²Π²ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ ΠΈΠ»ΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ.
ΠΡΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠΈΠΊΠ»Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠ°Ρ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ β ΠΈΠ½Π΄Π΅ΠΊΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠ°Ρ Π½ΠΎΠΌΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠ°.
ΠΡΠΈΠΌΠ΅Ρ 25: Π²Π²ΠΎΠ΄ ΠΌΠ°ΡΡΠΈΡΡ Π, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ n ΡΡΡΠΎΠΊ ΠΈ m ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ i ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠΌ ΡΡΡΠΎΠΊΠΈ ΠΌΠ°ΡΡΠΈΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ j β ΡΡΠΎΠ»Π±ΡΡ.
Dim n As Integer, m As Integer
Dim i As Integer, j As Integer
Dim Int_Array() As Integer
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
m = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
ReDim Int_Array(n, m)
For i = 1 To n
For j = 1 To m
Int_Array(i, j) = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Β» & Β«ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°_ (Β» & i & Β«,Β» & j & Β«) Β«, Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°; ΡΡΡΠΎΠΊΠ° Β» & i)
Next j
Next i
Π ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΊΠΈ i, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ Π²ΡΠ΅Ρ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ° j, Ρ. Π΅. Π²Π²ΠΎΠ΄ΠΈΡΡΡ ΡΡΡΠΎΠΊΠ°. ΠΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΈΠΊΠ»Π° (ΠΏΠΎ j) Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ i ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° 1 ΠΈ Π²Π²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ, Π½ΡΠ»Π΅Π²ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° j.
Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° InputBox ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Cells. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π·Π°ΠΏΠΈΡΠ°Π½Ρ ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ Π»ΠΈΡΡΠ΅ Excel. ΠΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΠΏΠΎΡΠΎΠ± Π²Π²ΠΎΠ΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΡΠΎΡΠΌΡΠ»Π΅, Π³Π΄Π΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΅Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΊ ΠΈ Π½ΠΎΠΌΠ΅ΡΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ².
Dim n As Integer, m As Integer
Dim i As Integer, j As Integer
Dim Int_Array() As Integer
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
m = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
ReDim Int_Array(n, m)
For i = 1 To n
For j = 1 To m
Int_Array(i, j) = Cells (i,j)
Next j
Next i
Dim n As Integer, m As Integer
Dim i As Integer, j As Integer
Dim Int_Array() As Integer
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
m = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
ReDim Int_Array(n, m)
For i = 1 To n
For j = 1 To m
Int_Array(i, j) =. ..
Next j
Next i
ΠΡΠΈ Π²Π²ΠΎΠ΄Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠΈΠΊΠ»Π° Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΡΠΎΠ»Π±ΡΠ° j, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ β ΡΡΡΠΎΠΊΠΈ i.
Dim n As Integer, m As Integer
Dim i As Integer, j As Integer
Dim Int_Array() As Integer
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
m = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
ReDim Int_Array(n, m)
For j = 1 To m
For i = 1 To n
Int_Array(i, j) = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Β» & Β«ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°_ (Β» & i & Β«,Β» & j & Β«) Β«, Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°; ΡΡΡΠΎΠΊΠ° Β» & i)
Next i
Next j
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΎΠ±Π΅ΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΏΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΎΠ±Π° ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ°Π²Π½ΠΎΡΠ΅Π½Π½Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π±ΡΡΡΡΠ΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΡΠΈΠΊΠ»Ρ, Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΈΠΊΠ»Π° ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π³ΠΎΠ². Π ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΏΠΎΡΠΎΠ±Π° Π²Π²ΠΎΠ΄Π°.
ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ Π²ΡΠ²ΠΎΠ΄Π° ΠΌΠ°ΡΡΠΈΡΡ Π½Π° ΠΏΠ΅ΡΠ°ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π²ΡΡΠ΅.
str_msg = «»
For i = 1 To n
For j = 1 To m
str_msg = str_msg & Int_Array(i, j) & Β«, Β«
Next j
str_msg = str_msg & Chr(13) βΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ
Next i
MsgBox Β«ΠΠ²Π΅Π΄Π΅Π½ΠΎ: Β» & Chr(13) & str_msg,, Β» ΠΡΠ²ΠΎΠ΄ ΡΠ°Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°Β»
ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠ²Π΅Π΄Π΅Π½Ρ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ. Π‘ΡΡΠΎΠΊΠ°
str_msg = str_msg & Chr(13)
ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ°ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΌΠ°ΡΡΠΈΡΡ Π½Π° ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΡΡΠΎΡΠΊΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ Β«ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΊΠ°ΡΠ΅ΡΠΊΠΈΒ» ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°).
ΠΡΠΈΠΌΠ΅Ρ 26. ΠΠ²ΠΎΠ΄-Π²ΡΠ²ΠΎΠ΄ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°
Sub DemoStatArray()
Dim str_msg As String
Dim n As Integer, m As Integer
Dim i As Integer, j As Integer
Dim Int_Array() As Integer
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
m = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
ReDim Int_Array(n, m)
For i = 1 To n
For j = 1 To m
Int_Array(i, j) = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Β» & Β«ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°_ (Β» & i & Β«,Β» & j & Β«) Β«, Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°; ΡΡΡΠΎΠΊΠ° Β» & i)
Next j
Next i
str_msg = «»
For i = 1 To n
For j = 1 To m
str_msg = str_msg & Int_Array(i, j) & Β«, Β«
Next j
str_msg = str_msg & Chr(13) βΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ
Next i
MsgBox Β«ΠΠ²Π΅Π΄Π΅Π½ΠΎ: Β» & Chr(13) & str_msg,, Β«ΠΡΠ²ΠΎΠ΄ ΡΠ°Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Β«
End Sub
9. 12.8. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ReDim Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ
ΠΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠ³ΡΡ ΡΠ»ΠΎΠΆΠΈΡΡΡΡ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²Π°, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΡΠ½ΠΎ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. Π VBA ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ², ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΡΠ°ΠΊΠΎΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΈΠ»ΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ, ΠΊΠ°ΠΊΠΎΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Dim, Π·Π°ΡΠ΅ΠΌ ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ReDim Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ.
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ R eDim ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
ReDim [Preserve] varname (subscripts) [As type] [varname_
(subscripts) [As type]]
ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Preserve ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ VBA ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΈΠΌΠ΅ΡΡΠ΅ΠΌΡΡ ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΊΠΎΠ³Π΄Π° ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ReDim; varname β ΠΈΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π°; subscripts β ΡΡΠΎ Π½ΠΎΠ²ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π°; type β ΡΠΈΠΏ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ As type Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ.
Dim aMonth() As String
ReDim aMonth(1 To 30) ReDim aMonth(31) ReDim Preserve aMonth(1 To 31) Dim Table()As Integer ReDim Table (3, 15) ReDim Table(4, 20) ReDim Preserve Table(4, 25) Dim Mas as Variant ReDim Mas(20) As Integer | βΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² aMonth
βΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄ΠΎ 30 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² βΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄ΠΎ 31 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° βΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄ΠΎ 31 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΡΠΎΡ ΡΠ°Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° βΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² βΠ΄Π΅Π»Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΌ βΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° βΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° βΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠ° Variant βΡΠΎΠ·Π΄Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² 20 ΡΠ΅Π»ΡΡ Π² Variant |
ΠΠ°ΠΆΠ½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ:
1. ΠΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Preserve;
2. ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ReDim Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π²Π½ΡΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΏΠ° Variant; ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΠ° Variant ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠΈΠΏΠ° Variant Π΄Π»Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°. (ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΏΠ° Variant Π΄Π»Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ReDim ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
ΠΌΠ°ΡΡΠΈΠ²Π°.)
ΠΠ±ΡΡΠ½ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ReDim ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΆΠ΅ Π±ΡΠ» ΠΎΠ±ΡΡΠ²Π»Π΅Π½ ΡΠ°Π½Π΅Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Dim. ΠΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ReDim Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ReDim Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
ΠΌΠ°ΡΡΠΈΠ²Π°, Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°ΡΡΠΈΠ² Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΏΠ° Variant ΠΈΠ»ΠΈ ΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΡΠΈΠΏ Variant. ΠΡΠ»ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΏΠ° Variant, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ As type Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ ReDim.
ΠΡΠΈΠΌΠ΅Ρ 27. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²Π²Π΅Π΄Π΅Π½Π° ΠΏΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°. ΠΡΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΌΡ (Π½ΠΎΠ²ΠΎΠΌΡ) ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Option Base 1
Sub DemoDinArray()
Dim Int_Array() As Integer
Dim str_msg As String, i As Integer
Dim Num
str_msg = Β» Β«
i = 0
Do
i = i + 1
Num = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄Π»Ρ Β» & i & Β«-Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°Β», Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
If Len(Num) = 0 Then Exit Do β Π²ΡΡ ΠΎΠ΄ ΠΈΠ· ΡΠΈΠΊΠ»Π°
β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
ReDim Preserve Int_Array(i)
βΠ²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ Π² i-ΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρβ ΠΌΠ°ΡΡΠΈΠ²Π°
Int_Array(i) = Num
Loop
For j = 1 To i β 1
str_msg = str_msg & Int_Array(j) & Β«, Β«
Next j
MsgBox Β«ΠΠ²Π΅Π΄Π΅Π½ΠΎ: Β» & str_msg,, Β«ΠΡΠ²ΠΎΠ΄ ΡΠ° Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°Β»
End Sub
ΠΡΠΈΠΌΠ΅Ρ 28. Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ DemoDinArray Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² Int_Array Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π΅Π³ΠΎ Π²ΡΠΎΡΠ°Ρ (ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ²) ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²Π²ΠΎΠ΄Π° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠΊΠ°Π·Π°Π»ΡΡ ΠΎΡ Π²Π²ΠΎΠ΄Π°, ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ. Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Π° Π²ΡΠΎΡΠ°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°: m=i-1. Π€ΡΠ½ΠΊΡΠΈΡ MsgBox Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π²Π²Π΅ΡΡΠΈ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Int_Array. ΠΠ°Π»Π΅Π΅ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΎΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ². ΠΠ°Π»Π΅Π΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Int_Arrayl ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΡΡΡΠΎΠΊΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Int_Array/
Option Base 1
Sub DemoDinArray2()
Dim Int_Arrayl() As Integer
Dim str_msg As String
Dim i As Integer, m As Integer, n As Integer
Dim Num
str_msg = «»
i = 0
Do
i = i + 1
Num = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄Π»Ρ Β» & i & Β«-Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°Β», Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°Β»)
If Len(Num) = 0 Then Exit Do β Π²ΡΡ ΠΎΠ΄ ΠΈΠ· ΡΠΈΠΊΠ»Π°
ReDim Preserve Int_Arrayl(i) βΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
Int_Arrayl(i) = CStr(Num) βΠ²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ Π² i-ΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°
Loop
m = i β 1 βΠ²ΡΠΎΡΠ°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°
n = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²Π° Β«)
ReDim Int_Array(n, m)
β Π·Π°ΠΏΠΈΡΡ Π² Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠΆΠ΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ
For j = 1 To m
Int_Array(1, j) = Int_Arrayl(j)
Next j
βΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΠΎΠ±ΡΡΠ½ΡΠΌ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ,
βΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΡ ΡΡΡΠΎΠΊΡ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ:
For i = 2 To n
For j = 1 To m
Int_Array(i, j) = InputBox(Β«ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π΄Π»Ρ Β» & Β» ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° (Β» & i & Β«,Β» & j & Β«)Β», Β«ΠΠ²ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°; ΡΡΡΠΎΠΊΠ° Β» & i)
Next j
Next i
βΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΡΡΠΎΠΊΠΈ Π²ΡΠ΄Π°ΡΠΈ
For i = 1 To n
For j = 1 To m
str_msg = str_msg & Int_Array(i, j) & Β«, Β«
Next j
str_msg = str_msg & Chr(13) β ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ
Next i
MsgBox Β«ΠΠ²Π΅Π΄Π΅Π½ΠΎ: Β» & Chr(13) & str_msg,, Β«ΠΡΠ²ΠΎΠ΄ ΡΠ°Π½Π΅Π΅ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°Β»
End Sub
|
ΠΠ°ΡΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ: 2014-01-04; ΠΡΠΎΡΠΌΠΎΡΡΠΎΠ²: 2792; ΠΠ°ΡΡΡΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΡΡΠΊΠΈΡ ΠΏΡΠ°Π²?; ΠΡ ΠΏΠΎΠΌΠΎΠΆΠ΅ΠΌ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ!
ΠΠ°ΠΌ Π²Π°ΠΆΠ½ΠΎ Π²Π°ΡΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅! ΠΡΠ» Π»ΠΈ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»? ΠΠ° | ΠΠ΅Ρ
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π² VBA
ΡΠΏΡΠΎΡΠΈΠ»
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ
1 ΠΌΠ΅ΡΡΡ Π½Π°Π·Π°Π΄
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π½ΠΎ
78 ΡΡΡΡΡ ΡΠ°Π·
Π― ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΏΡΡΡΠ° ΡΡΠ΅ΠΉΠΊΠ° ΠΈΠ»ΠΈ Π½Π΅Ρ. Π― Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π·Π½Π°ΠΊΠΎΠΌ Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Π² VBA, ΠΏΠΎΡΡΠΎΠΌΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΌΠΎΡ Π»ΠΎΠ³ΠΈΠΊΠ° Π½Π΅Π²Π΅ΡΠ½Π°. ΠΠΎΠ΄ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ 1-ΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΈ ΠΎΠ½ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ. Π― Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΠΏΠΎΡΠ΅ΠΌΡ UBound(myArray) Π²ΡΠ΅Π³Π΄Π° ΠΎΡΡΠ°Π΅ΡΡΡ ΡΠ°Π²Π½ΡΠΌ 0 Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π±ΡΠ» ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ 1-ΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.0005
ΠΠΎΠΉ ΠΊΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
Dim myArray() As Double ReDim Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (0) ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π² [myRange] ΠΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΊΠ° <> "" Π’ΠΎΠ³Π΄Π° ΠΡΠ»ΠΈ UBound(myArray) > 0 Π’ΠΎΠ³Π΄Π° ReDim Preserve myArray (ΠΎΡ 0 Π΄ΠΎ UBound (myArray) + 1) ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (UBound (ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ²)) = ΡΡΠ΅ΠΉΠΊΠ°. Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ
- vba
- Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ
0
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΠΉΡΠ΅ Π΅Π΅, Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ubound, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ:
Sub Test() Dim myArray() ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ, X ΠΊΠ°ΠΊ Π΄Π»ΠΈΠ½Π½ΡΠΉ Π₯ = 0 ReDim ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (X) ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ (Β«ΠΡΠΈΠ²Π΅ΡΒ») ΠΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΊΠ° <> "" Π’ΠΎΠ³Π΄Π° ReDim ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (ΠΎΡ 0 Π΄ΠΎ X) myArray(X) = ΡΡΠ΅ΠΉΠΊΠ°.ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ Π₯ = Π₯ + 1 ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΠΎΠ½Π΅Ρ ΡΠ°Π±Π²ΡΡΠ΅ΡΠ°
2
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΡΠ»ΠΈ UBound(myArray) > 0, ΡΠΎ 9ΠΡ 0032 Π΄ΠΎ
ΠΡΠ»ΠΈ UBound(myArray) >= 0, ΡΠΎΠ³Π΄Π°
ΡΠ΅ΡΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠΎΠ΄ΡΠ΅ΡΡ()
Dim myArray() ΠΊΠ°ΠΊ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ
ReDim Π‘ΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (0)
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ (Β«ΠΡΠΈΠ²Π΅ΡΒ»)
ΠΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΊΠ° <> "" Π’ΠΎΠ³Π΄Π°
ΠΡΠ»ΠΈ UBound(myArray) >= 0 Π’ΠΎΠ³Π΄Π°
ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (UBound (ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ²)) = ΡΡΠ΅ΠΉΠΊΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
ReDim Preserve myArray (ΠΎΡ 0 Π΄ΠΎ UBound (myArray) + 1)
ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ
ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ
ΠΠΎΠ½Π΅Ρ ΡΠ°Π±Π²ΡΡΠ΅ΡΠ°
6
Π Π°ΡΡΠΈΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΡΠ½Π° ΠΠΎΠ½ΠΎΡ
ΡΡ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠ΅Π·ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠ΅ΡΠ° (ΠΈ ΡΡΠ΅Π·ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΡΠ΅ΡΠ° Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΠ°Π½Π½ΠΎ Π·Π° ΡΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
), Ρ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»
Dim rng ΠΊΠ°ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ rng = Range("ΠΡΠΈΠ²Π΅Ρ")
Dim myArray() ΠΊΠ°ΠΊ Double, X ΠΊΠ°ΠΊ Long, N ΠΊΠ°ΠΊ Long
Π₯ = 0
N = WorksheetFunction.CountIf(rng, "<>")
ReDim ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² (X)
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ Π² rng
ΠΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΊΠ° <> "" Π X < N Π’ΠΎΠ³Π΄Π°
myArray(X) = ΡΡΠ΅ΠΉΠΊΠ°.ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅
Π₯ = Π₯ + 1
ΠΡΠ»ΠΈ X < N, ΡΠΎ ReDim ΡΠΎΡ
ΡΠ°Π½ΠΈΡ myArray (ΠΎΡ 0 Π΄ΠΎ X)
ΠΠΎΠ½Π΅Ρ, Π΅ΡΠ»ΠΈ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ
1
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Facebook
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΎΡΡΡ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠ°ΠΆΠΈΠΌΠ°Ρ Β«ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΎΡΠ²Π΅ΡΒ», Π²Ρ ΡΠΎΠ³Π»Π°ΡΠ°Π΅ΡΠ΅ΡΡ Ρ Π½Π°ΡΠΈΠΌΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ ΠΈ ΠΏΠΎΠ½ΡΠ»ΠΈ Π½Π°ΡΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΊΠΎΠ΄Π΅ΠΊΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ.
vba β Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ² Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ°Π΄Π°Π²Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ
ΡΠΏΡΠΎΡΠΈΠ»
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ
7 Π»Π΅Ρ, 6 ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π°Π·Π°Π΄
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π½ΠΎ
408 ΡΠ°Π·
Π― Π½ΠΈΠ³Π΄Π΅ Π½Π΅ ΠΌΠΎΠ³Ρ Π½Π°ΠΉΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΊΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Dim list1 () ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
Dim list2() ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
Dim list3() ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
...
Dim listN() ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ². Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ Π½Π΅ Π·Π½Π°Ρ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ "N" Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π― ΡΠ°ΠΊΠΆΠ΅ Ρ
ΠΎΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΈ ΡΠΏΠΈΡΠΊΠΈ "N" Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ. Π― ΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Β«redimΒ» ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ.
Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Ρ Π΄Π΅Π»Π°Ρ ΡΡΠΎ:
Dim BigList() ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
...
Redim BigList(listNum, listLength)
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ/ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ "list1", "list2" , "list3"..., Π²ΡΠ·ΠΎΠ² "BigList(1)", "BigList(2)" Π΄Π°Π΅Ρ ΠΌΠ½Π΅ ΠΎΡΠΈΠ±ΠΊΡ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π³Π΄Π΅-ΡΠΎ Π² ΠΌΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅ Π΅ΡΡΡ ΡΡΠ° ΡΠ°ΡΡΡ:
sub ProcessList (byref listToProcess() ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ)
...
ΠΊΠΎΠ½Π΅Ρ ΡΡΠ±
ΡΡΠ± ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ()
...
Π²ΡΠ·ΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² (ΡΠΏΠΈΡΠΎΠΊ1)
Π²ΡΠ·ΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² (ΡΠΏΠΈΡΠΎΠΊ2)
...
Π²ΡΠ·ΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² (ΡΠΏΠΈΡΠΎΠΊN)
ΠΊΠΎΠ½Π΅Ρ ΡΡΠ±
Π’Π΅ΠΏΠ΅ΡΡ Ρ ΠΌΠΎΠ³Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠΈΠΊΠ»:
Π΄Π»Ρ i = ΠΎΡ 1 Π΄ΠΎ N
ΠΡΠ·ΠΎΠ² ProcessList(ΡΠΏΠΈΡΠΎΠΊ "i")
ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Ρ
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ list"i" Π±ΡΠ» ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΌ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ. ΠΡΠ°ΠΊ, ΠΏΠΎΡΠ»Π΅ redim BigList(listNum,listLength) ΠΈ Ρ Π΄Π΅Π»Π°Ρ ΡΡΠΎ:
Π΄Π»Ρ i = 1 Π΄ΠΎ N
Call ProcessList(BigList(i)) 'Ρ ΡΡΡΠ»Π°ΡΡΡ Π½Π° listNum
ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Ρ
ΠΡΠΎ Π΄Π°Π΅Ρ ΠΌΠ½Π΅ ΠΎΡΠΈΠ±ΠΊΡ "ΠΠ΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ ΡΠΈΠΏ".
ΠΌΠ°ΡΡΠΈΠ²Ρ
vba
8
ΠΠΎΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ»ΠΎΠ²Π°ΡΡ
, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (Ρ. Π΅.
N
) ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΡΡΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ.
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ExtendList
Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΡΠΈΡ
ΠΏΡΡΡΡΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ.
Sub foo()
Dim BigList ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡ
Dim N As Long
Dim v ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ
'Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΡΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ»ΠΎΠ²Π°ΡΡ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ BigList = CreateObject("Scripting.Dictionary")
'ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ»ΠΎΠ²Π°ΡΡ N ΠΏΡΡΡΡΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²:
Π = 3
ΠΠ»Ρ i = 1 Π΄ΠΎ N
ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ (Ρ) = ΠΠ°ΡΡΠΈΠ² ()
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ
'ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² Π²Π°ΡΠ΅ΠΌ BigList
ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ (2) = Π Π°ΡΡΠΈΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ (Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ (2), 1, 10)
v = BigList(2) 'ΠΠ΄Π΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ v Π² ΠΎΠΊΠ½Π΅ Locals ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ² ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 1 x 10
ΠΠΎΠ½Π΅Ρ ΡΠ°Π±Π²ΡΡΠ΅ΡΠ°
Π€ΡΠ½ΠΊΡΠΈΡ ExtendList(lst, a As Long, b As Long)
ReDim lst(a, b)
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ = ΡΠΏΠΈΡΠΎΠΊ
ΠΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ
ΠΡΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ° Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π²Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ
ReDim
:
Redim BigList(listNum, listLength)
ΠΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ
BigList
Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² listNum
ΠΈ listLength
. ΠΠ½ Π΄Π΅Π»Π°Π΅Ρ , Π° Π½Π΅ (ΠΊΠ°ΠΊ Π²Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ), ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π²Π½ΡΡΡΠΈ
BigList
.
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ (Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ, ΠΈ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈΠΌΠ΅ΡΡ Π½ΡΠ»Π΅Π²ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ):
ReDim Preserve BigList(listNum)
ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ (Π½ΠΎΠΌΠ΅Ρ ΡΠΏΠΈΡΠΊΠ°) = ΠΠ°ΡΡΠΈΠ² ()
ReDim BigList (listNum) (listSize)
2
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Facebook
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΎΡΡΡ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π³ΠΎΡΡΡ
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ, Π½ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ
ΠΠ°ΠΆΠΈΠΌΠ°Ρ Β«ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΎΡΠ²Π΅ΡΒ», Π²Ρ ΡΠΎΠ³Π»Π°ΡΠ°Π΅ΡΠ΅ΡΡ Ρ Π½Π°ΡΠΈΠΌΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ ΠΈ ΠΏΠΎΠ½ΡΠ»ΠΈ Π½Π°ΡΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΊΠΎΠ΄Π΅ΠΊΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ.