Controlar a extensão da rolagem em uma barra de rolagem

O exemplo a seguir demonstra as propriedades LargeChange e SmallChange quando usadas com uma Barra de Rolagem autônoma. O usuário pode definir os valores de LargeChange e SmallChange como qualquer inteiro no intervalo de 0 a 100. Este exemplo também usa a propriedade TextBox.MaxLength para restringir o número de caracteres inseridos nos controles TextBox para os valores LargeChange e SmallChange .

To use this example, copy this sample code to the Script Editor of a form. To run the code you need to open the form so the Open event will activate. Make sure that the form contains:

  • Um rótulo chamado Label1

  • Um TextBox denominado TextBox1 que é vinculado ao campo numérico personalizado denominado ScrollBarSmallChange

  • Um Label denominado Label2

  • Um TextBox denominado TextBox2 que é vinculado ao campo numérico personalizado denominado ScrollBarLargeChange.

  • Um ScrollBar denominado ScrollBar1 vinculado ao campo numérico personalizado denominado ScrollBarValue.

  • Um Label denominado Label3.

Sub Item_Open() 
 Set Label1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label1") 
 Set ScrollBar1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ScrollBar1") 
 Set TextBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox1") 
 Set Label2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label2") 
 Set TextBox2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox2") 
 Set Label3 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label3") 
 
 ScrollBar1.Min = -1000 
 ScrollBar1.Max = 1000 
 
 Label1.Caption = "SmallChange 0 to 100" 
 ScrollBar1.SmallChange = 1 
 TextBox1.Text = ScrollBar1.SmallChange 
 TextBox1.MaxLength = 3 
 
 Label2.Caption = "LargeChange 0 to 100" 
 ScrollBar1.LargeChange = 100 
 TextBox2.Text = ScrollBar1.LargeChange 
 TextBox2.MaxLength = 3 
 
 ScrollBar1.Value = 0 
 Label3.Caption = ScrollBar1.Value 
End Sub 
 
Sub Item_CustomPropertyChange(byval pname) 
 Set ScrollBar1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ScrollBar1") 
 Set TextBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox1") 
 Set TextBox2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox2") 
 Set Label3 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label3") 
 
 If pname = "ScrollBarMin" Then 
 
 If IsNumeric(TextBox1.Text) Then 
 TempNum = CInt(TextBox1.Text) 
 If TempNum >= 0 And TempNum <= 100 Then 
 ScrollBar1.SmallChange = TempNum 
 Else 
 TextBox1.Text = ScrollBar1.SmallChange 
 End If 
 Else 
 TextBox1.Text = ScrollBar1.SmallChange 
 End If 
 
 ElseIf pname = "ScrollBarMax" Then 
 
 If IsNumeric(TextBox2.Text) Then 
 TempNum = CInt(TextBox2.Text) 
 If TempNum >= 0 And TempNum <= 100 Then 
 ScrollBar1.LargeChange = TempNum 
 Else 
 TextBox2.Text = ScrollBar1.LargeChange 
 End If 
 Else 
 TextBox2.Text = ScrollBar1.LargeChange 
 End If 
 
 ElseIf pname = "ScrollBarValue" Then 
 
 Label3.Caption = ScrollBar1.Value 
 End If 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.