O Código: Private Sub CommandButton1_Click() 'Botão Altera-OK Cells(nRow, "A") = TextBox1.Text ' As células tomam os novos dados Cells(nRow, "B") = TextBox2.Text Cells(nRow, "C") = TextBox3.Text End Sub
Read More »O evento WorkSheet_Change()
Se pretendermos provocar uma ocorrência sempre uma determinada célula é alterada, podemos socorre-nos do evento WorkSheet_Change(). Tomemos o seguinte exemplo: Se se pretender que, sempre que se insira um novo valor em A1, apareça em B1 metade do valor inserido em A1, adicionado ao valor que antes estava em B1, ou seja: 1ª inserção em A1 = 36, logo, B1 …
Read More »Preenchimento de Caixa de Combinação (ComboBox)
Quando criamos uma Caixa de Combinação dentro de um UserForm, em vez de preencher o campo RowSource nas Propriedades da Caixa, podemos optar pelo seu preenchimento através de VBE. O Código: Private Sub UserForm_Initialize() ContarEntradas CarregarCaixa lblTitulo.SetFocusEnd Sub Sub CarregarCaixa() Dim genero(14) As String genero(0) = "Romance" genero(1) = "Policial" genero(2) = "Técnico" genero(3) = "Estudo" genero(4) = "Clássico" genero(5) = "Crónica" genero(6) = "História" genero(7) = "Informática" genero(8) = "Literatura" genero(9) = …
Read More »Visualização de Formulário
Se pretendermos ver um formulário (que criámos anteriormente) ao efectuarmos duplo clique numa célula de uma worksheet, acedemos ao código dessa worksheet (clicando no tabulador com a tecla direita do mouse): e escrevemos o seguinte código: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) UserForm1.Show Cancel = TrueEnd Sub Ao fazer-se duplo clique em qualquer célula da worksheet1, o resultado será …
Read More »Visualização de Formulário (II)
Se pretendermos que a visualização do UserForm seja limitado a um ou vários Ranges, então podemos inserir o seguinte Código: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim rng1 As Range, rng2 As Range Set rng1 = Range("a1:a10")Set rng2 = Range("b1:b10") If Not Intersect(Target, rng1) Is Nothing Then UserForm1.Show Else Cancel = True End If If Not Intersect(Target, rng2) Is …
Read More »