|
Тема
|
Label VBA
|
|
Автор | Учaщ (Нерегистриран) |
Публикувано | 29.06.04 08:17 |
|
В UserForm1 имам Label1,Label2 ............ Label258
Как с брояч на редове може да посоча етикета,възможно ли е?
For BrRed= 1 to 258
Label ??? BrRed = Sheet1.Cells(,[1])
Next BrRed
Благодаря предварително.
| |
Тема
|
Re: Label VBA
[re: Учaщ]
|
|
Автор | Учaщ (Нерегистриран) |
Публикувано | 30.06.04 07:58 |
|
Хайде помагайте иначе двойка.![](http://i.dirbg.com/clubs/icons/blush.gif)
| |
Тема
|
Re: Label VBA
[re: Учaщ]
|
|
Автор |
Щиpлиц (разузнавач) |
Публикувано | 30.06.04 09:55 |
|
Абе, не знам дали въобще е възможно, но ми се струва, че не може да се ползва по този начин брояч.
Съвета ми е - изчисти лейбълите, и направи нови с еднакво име, и индексирани. Т.е. Първия лейбъл му даваш име LabelBrRed, и индекс (Index) = 0. После го маркираш, натискаш Ctrl-C (Copy), и после колкото ти трябва пъти Ctrl-V (Paste), всеки следващ появил се лейбъл ще е със същото име, но със следващ индекс.
В кода ползваш така:
For s = 1 To 258
LabelBrRed(s - 1) = Sheet.Cells(,[1])
Next s
Т.е. това "s" в случая е брояча, и сложено в скобки след името на лейбъла - означава неговия индекс. Само че индексирането е от 0, а не от 1, затова при правене на такива цикли трябва да го имаш в предвид.
| |
Тема
|
Re: Label VBA на Вниманието на Щирлиц
[re: Щиpлиц]
|
|
Автор | Учaщ (Нерегистриран) |
Публикувано | 30.06.04 13:50 |
|
ЩИРЛИЦ Благодаря за вниманието,но нещо не се получи.
Създавам Label1.С Proprties - Caption преименувам на LabelBrRed.
Copy и Paste създавам нови 2 лейбъла със същото име и.В Tabindex лейбълите са с 0, 1 и 2.
В CommandButton1_Click() записвам :
For i = 1 to 3
labelbrred(i-1)= i
Next
В CommandButton1_Click() LabelBrRed не го разпознава като лейбъл и ми дава грешка Sub or function not defined.
Какво пропускам.
![](http://i.dirbg.com/clubs/icons/blush.gif) ![](http://i.dirbg.com/clubs/icons/blush.gif) ![](http://i.dirbg.com/clubs/icons/blush.gif)
| |
Тема
|
Re: Label VBA на Вниманието на Щирлиц
[re: Учaщ]
|
|
Автор |
Щиpлиц (разузнавач) |
Публикувано | 30.06.04 17:27 |
|
Ами, то проблема не е при теб, а при мен.
Не става дума за TabIndex, а за Index. Обаче не знам защо, сега като пуснах една форма, и натраках лейбълите - не виждам това свойство. Както излиза, във VBA изобщо няма свойство Index, а аз не съм знаел.
Разликите във VB и VBA не са малко. Ще трябва да попрочетем още неща по въпроса.
Ето какво сътворих сега на VB, което е удобно и за предишния ти вариант със именуваните Label1, Label2, Label3 и т.н....
Private Sub Command1_Click()
Dim ctl As Object
For s = 1 To 5
For Each ctl In Form1
If TypeOf ctl Is Label Then
If ctl.Name = "Label" & Trim(Str(s)) Then ctl.Caption = Str(s)
End If
Next
Next s
End Sub
ама пак само във VB работи. ;о(
Хайде да потърсим инфо, пък пак ще мислим...
| |
Тема
|
Re: Label VBA на Вниманието на Щирлиц
[re: Щиpлиц]
|
|
Автор | Учaщ (Нерегистриран) |
Публикувано | 05.07.04 18:53 |
|
Може и други да подскажат как може да стане.![](http://i.dirbg.com/clubs/icons/mad.gif)
| |
|
|
|
|