ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния. 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° vba Π² ms excel

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ВСкстовыС поля ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ числа ΠΈ Ρ‚Скст, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ноля Π²Π²ΠΎΠ΄Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π½Π΅ΠΆΠ½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-управляСмая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° элСмСнта основана Π½Π° UNO-сСрвисС com.sun.star.awt.UnoControlEdit. Selection (Ρ‚ΠΈΠΏ Stmct) опрСдСляСт характСристики выдСлСния (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния). Stmct — структура со ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌΠΈ Min ΠΈ ΠœΠ°Ρ… Π² ΡΠΎΠΎΡ‚вСтствии… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° vba Π² ms excel (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ОО.ΠΎ Basic ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ — элСмСнты управлСния, ΠΊΠ°ΠΊ Ρ„ΠΎΡ€ΠΌΡ‹ (Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ), тСкстовыС поля, ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ, списки, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ списки, ΠΊΠ½ΠΎΠΏΠΊΠΈ с Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ фиксациСй ΠΈ Π΄Ρ€. ΠŸΡ€ΠΈ этом сущСствуСт нСсколько Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… тСкстовых ΠΏΠΎΠ»Π΅ΠΉ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΠΈΠΏ «Ρ‡ΠΈΡΠ»ΠΎ» ΠΈΠ»ΠΈ «Π΄Π°Ρ‚Π°».

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ (Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹) Π² Π»ΡŽΠ±ΠΎΠΌ количСствС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ…, Π½ΠΎ ΠΈ Π² ΡΠ°ΠΌΠΎΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅-Ρ‚Π°Π±Π»ΠΈΡ†Π΅ OpenOffice Calc. Π Π°Π·ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов «Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния >. Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ свойства ΠΈ ΠΌΠ°ΠΊΡ€ΠΎΡΡ‹ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ управлСния ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ getControl, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ имя.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Dim oCmd As Object.

oCmd = oDlg. getControl{" CmdBtnl")

oCmd. Label = «New» .

Π—Π΄Π΅ΡΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ пСрСмСнная oDlg содСрТит ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ссылку Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³. Для элСмСнта управлСния CmdBtnl опрСдСляСтся ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ пСрСмСнная oCmd со ΡΡΡ‹Π»ΠΊΠΎΠΉ Π½Π° ΡΡ‚ΠΎΡ‚ элСмСнт. Π”Π°Π»Π΅Π΅ устанавливаСтся Π΅Π³ΠΎ свойства Label (надпись) Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ New.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅'. ОО. ΠΎ Basic Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅Ρ‚ Π² ΠΈΠΌΠ΅Π½Π°Ρ… элСмСнтов управлСния Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ ΠΈ ΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы.

НСпосрСдствСнный доступ ΠΊ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠΌΡƒ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈΠ»ΠΈ элСмСнта управлСния ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Model. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Model являСтся ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹ΠΌ свойством ΠΈ Π²Ρ…ΠΎΠ΄ΠΈΡ‚, наряду с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΠΈ ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌΠΈ, Π² ΡΠΎΡΡ‚Π°Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ² управлСния.

Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ элСмСнтами ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Π’ΠΈΠ΄) ΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΏΠΎΠ·Π°Π΄ΠΈ Π½ΠΈΡ… (МодСль) поддСрТиваСтся OpenOffice.org API Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… мСстах. Π’ Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ… Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ярко Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΎ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ элСмСнты API доступны ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π’ΠΈΠ΄, ΠΈ Ρ‡Π΅Ρ€Π΅Π· МодСль. Бвойство Model осущСствляСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-управляСмый доступ ΠΊ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ элСмСнтов управлСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Dim oCmd As Object.

oCmd = oDlg. getControl («CmdBtnl»).

oCmd.Model. Enabled = False.

Π’ ΡΡ‚ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ oDlg дСлаСтся нСдоступной ΠΊΠ½ΠΎΠΏΠΊΠ° CmdBtn 1 Ρ‡Π΅Ρ€Π΅Π· модСль ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° oCmd.

Из Π²ΡΠ΅Π³ΠΎ многообразия прСдоставляСмых ΠžΠž. ΠΎ Basic элСмСнтов управлСния рассмотрим ΠΊΡ€Π°Ρ‚ΠΊΠΎ тСкстовоС ΠΏΠΎΠ»Π΅ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹[1].

ВСкстовыС поля ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ числа ΠΈ Ρ‚Скст, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ноля Π²Π²ΠΎΠ΄Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π½Π΅ΠΆΠ½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-управляСмая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° элСмСнта основана Π½Π° UNO-сСрвисС com.sun.star.awt.UnoControlEdit.

ВСкстовыС поля ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свойства:

  • β€’ Text (Ρ‚ΠΈΠΏ String) опрСдСляСт Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ содСрТимоС (тСкст) поля;
  • β€’ SelectedText (Ρ‚ΠΈΠΏ String) содСрТит Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ тСкст поля;
  • β€’ Selection (Ρ‚ΠΈΠΏ Stmct) опрСдСляСт характСристики выдСлСния (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния). Stmct — структура со ΡΠ²ΠΎΠΉΡΡ‚Π²Π°ΠΌΠΈ Min ΠΈ ΠœΠ°Ρ… Π² ΡΠΎΠΎΡ‚вСтствии с com.sun.star.awt.Selection, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π°Ρ Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ выдСлСния;
  • β€’ MaxTextLen (Ρ‚ΠΈΠΏ short) — максимальноС количСство символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ввСсти Π² ΠΏΠΎΠ»Π΅;
  • β€’ Editable (Ρ‚ΠΈΠΏ Boolean) опрСдСляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Π²ΠΎΠ΄Π° тСкста (True — Π²Π²ΠΎΠ΄ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, ΠΏΡ€ΠΈ False Π²Π²ΠΎΠ΄ блокируСтся). ВызываСтся нСпосрСдствСнно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· IsEditable;
  • β€’ IsEditable (Ρ‚ΠΈΠΏ Boolean) — содСрТимоС элСмСнта управлСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, пСрСчислим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· связанный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ:

  • β€’ Model. BackgroundColor (Ρ‚ΠΈΠΏ long) Π·Π°Π΄Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° элСмСнта управлСния;
  • β€’ Model. MultiLine (Ρ‚ΠΈΠΏ Boolean) Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Ρ€Π΅ΠΆΠΈΠΌ Π²Π²ΠΎΠ΄Π° тСкста Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строках;
  • β€’ Model. Readonly (Ρ‚ΠΈΠ½ Boolean) устанавливаСт Ρ€Π΅ΠΆΠΈΠΌ содСрТимого поля Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния.

Из ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² тСкстового поля ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для дальнСйшСго излоТСния ΠΌΠ΅Ρ‚ΠΎΠ΄ setSelection (Selection), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСт Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ тСкста Π² ΡΠΎΠΎΡ‚вСтствии с ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰Π΅ΠΉΡΡ Π² ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ Selection ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. Бмысл этой структуры описан Π²Ρ‹ΡˆΠ΅ Π² ΡΠ²ΠΎΠΉΡΡ‚Π²Π΅ Selection.

  • [1] ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ OpenOffice.org.BASIC. URL: http://websprav.admm-smolensk.ru/freesoft/freesoft/OpenOfiice.org.BASIC Guide.pdf.
ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ