Sabendo como funciona o Operador de Divisão Inteiro (), então, podemos construir uma UDF, que mais não é do que a Função do Excel denominada QUOTIENT(). Vejamos o exemplo no seguinte screenshot: O Código da Função IntDiv(): Function IntDiv(ByVal vStr As Double, vStr1 As Double) As Double Dim oStr As String oStr = vStr vStr1 IntDiv = oStr End Function …
Read More »Open Statement
Se pretendermos utilizar um ficheiro texto (ex: teste.txt) como um ficheiro com conteúdo numérico sequenciador para uma célula de uma worksheet (ex: A1), então, podemos criar o ficheiro, digitar 0 (zero) e salvá-lo no directório escolhido. Depois, um pouco de VBA adicionado a um Command Button, faz o resto. O Código: Private Sub CommandButton1_Click() Dim strTemp As String On Error GoTo …
Read More »AutoFilter e Criteria (II)
Se numa tabela de nomes pretendermos filtrar um determinado nome (ex: António), o qual pode ser nome próprio, nome do meio ou apelido, podemos utilizar um pouco de VBA: O Código: Private Sub CommandButton1_Click()Dim myName Range("A1:A700").Select myName = InputBox(Prompt:="Digite o nome para filtro ou carregue em OK para remover filtro", Title:="Filtra por nome") If myName = "" Then Selection.AutoFilter Range("A1").Select Else Selection.AutoFilter Field:=1, Criteria1:="*" & …
Read More »Picture Property
Se pretendermos inserir uma imagem numa folha de cálculo e dentro de uma "Image box control", como no exemplo: podemos utilizar um pouco de Código: Option Explicit Private Sub CommandButton1_Click() Dim myPictName As Variant Dim Image1 As Image myPictName = Application.GetOpenFilename _ (filefilter:="Picture Files,*.jpg;*.bmp;*.tif;*.gif") If myPictName = False Then Exit Sub End If Me.Image1.Picture = LoadPicture(myPictName) End Sub
Read More »Offset, Copy Destination e PasteSpecial
Se tivermos uma tabela na Sheet2, como no exemplo: e pretendermos copiar o conteúdo das colunas B e C, por linha para a Sheet1, como no exemplo: podemos correr o risco de perdermos a formatação inicial na Sheet1, no que diz respeito ao valor, se utilizarmos o seguinte Código: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Set rng1 = …
Read More »