About Me
Com tecnologia do Blogger.
Seguidores
Estatisticas
2006-04-27
VBA: AutoFilter e Criteria
10:18 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
Se pretendermos efectuar um filtro, utilizando dados provenientes de determinadas células, como no exemplo:
podemos utilizar um pouco de Código VBA:
'---------------------------------------------------------------
' Procedure : Filtra_Click
' DateTime : 24-04-2006 19:07
' Author : JRod
' Purpose : Efectua um filtro por data anterior ou posterior
' : (célula I3) à data inscrita na célula I5
' : Se I5 for vazio, desfaz o filtro
'---------------------------------------------------------------
'
Private Sub Filtra_Click()
Dim myStartDate
Range("F6:F700").Select
myStartDate = Worksheets(1).Cells(5, 9).Value
If myStartDate = "" Then
Selection.AutoFilter
Range("K1").Select
Else
Selection.AutoFilter Field:=1, Criteria1:=Worksheets(1).Cells(3, 9).Value & _
CLng(Worksheets(1).Cells(5, 9).Value), Operator:=xlAnd
Range("K1").Select
End If
End Sub
podemos utilizar um pouco de Código VBA:
'---------------------------------------------------------------
' Procedure : Filtra_Click
' DateTime : 24-04-2006 19:07
' Author : JRod
' Purpose : Efectua um filtro por data anterior ou posterior
' : (célula I3) à data inscrita na célula I5
' : Se I5 for vazio, desfaz o filtro
'---------------------------------------------------------------
'
Private Sub Filtra_Click()
Dim myStartDate
Range("F6:F700").Select
myStartDate = Worksheets(1).Cells(5, 9).Value
If myStartDate = "" Then
Selection.AutoFilter
Range("K1").Select
Else
Selection.AutoFilter Field:=1, Criteria1:=Worksheets(1).Cells(3, 9).Value & _
CLng(Worksheets(1).Cells(5, 9).Value), Operator:=xlAnd
Range("K1").Select
End If
End Sub
MEDC Europe, Nice, France 6-8 June
3:40 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
O denominado Microsoft Mobile & Embedded Devcon 2006 Europe (MEDC), vai ter lugar em Nice, de 6 a 8 de Junho próximos.
Para melhor informação, pode aceder-se às páginas:
Microsoft Mobile & Embedded Devcon 2006 Europe;
MEDC I;
MEDC II;
MS-Mobiles.com
Também se pode ver mais qualquer coisa em Paul Mooney.
Se estiverem interessados, será uma boa ocasião para troca de ideias e ouvir os experts na matéria.
Para melhor informação, pode aceder-se às páginas:
Microsoft Mobile & Embedded Devcon 2006 Europe;
MEDC I;
MEDC II;
MS-Mobiles.com
Também se pode ver mais qualquer coisa em Paul Mooney.
Se estiverem interessados, será uma boa ocasião para troca de ideias e ouvir os experts na matéria.
2006-04-10
VBA: A Propriedade Offset
11:47 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
Se quisermos saber o nome do utilizador e a data e hora do acesso a determinado workbook, como no exemplo:
Obteremos o seguinte resultado:
O Código do exemplo:
Sub Auto_Open()
Dim Ops(1 To 5) As String
Dim Msg As String
Ops(1) = Day(Date)
Ops(2) = Month(Date)
Ops(3) = Year(Date)
Ops(4) = Hour(Time)
Ops(5) = Minute(Time)
Msg = Ops(3) & "-" & Ops(2) & "-" & Ops(1) & " " & Ops(4) & ":" & Ops(5)
Sheets("Sheet1").Select
Range("A65536").Select
Selection.End(xlUp).Select ' Selecciona a última célula não vazia do Range
ActiveCell.Offset(1, 0).Select ' Selecciona a primeira célula vazia do Range
Application.Cursor = xlNormal
Do While IsEmpty(ActiveCell)
ActiveCell.Value = InputBox(Prompt:="Introduza o seu NOME:", _
Title:="Nome do Utilizador")
ActiveCell.Value = UCase(ActiveCell) ' Transforma em letras maiúsculas
Loop
Range("B65536").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Msg
End
End Sub
Obteremos o seguinte resultado:
O Código do exemplo:
Sub Auto_Open()
Dim Ops(1 To 5) As String
Dim Msg As String
Ops(1) = Day(Date)
Ops(2) = Month(Date)
Ops(3) = Year(Date)
Ops(4) = Hour(Time)
Ops(5) = Minute(Time)
Msg = Ops(3) & "-" & Ops(2) & "-" & Ops(1) & " " & Ops(4) & ":" & Ops(5)
Sheets("Sheet1").Select
Range("A65536").Select
Selection.End(xlUp).Select ' Selecciona a última célula não vazia do Range
ActiveCell.Offset(1, 0).Select ' Selecciona a primeira célula vazia do Range
Application.Cursor = xlNormal
Do While IsEmpty(ActiveCell)
ActiveCell.Value = InputBox(Prompt:="Introduza o seu NOME:", _
Title:="Nome do Utilizador")
ActiveCell.Value = UCase(ActiveCell) ' Transforma em letras maiúsculas
Loop
Range("B65536").Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Msg
End
End Sub
2006-04-06
Excel: As Funções LEN() e SUBSTITUTE()
10:46 da tarde |
Publicada por
JRod - PORTUGAL |
Editar mensagem
Um dia destes, foi-me perguntado, por mail, qual a fórmula que permite contar as ocorrências de um caracter numa célula. Exemplo:
Quantos caracteres "." tem na célula A1 cujo conteúdo é 01.02.03.04? A célula A1 neste caso é do tipo texto. O resultado deveria ser 3.
Utilizando as Funções LEN() e SUBSTITUTE(), obtém-se o resultado desejado:
A fórmula em B1:
=LEN(A1)-LEN(SUBSTITUTE(A1;".";""))
(em Português):
=NÚM.CARACT(A1)-NÚM.CARACT(SUBSTITUIR(A1;".";""))
Quantos caracteres "." tem na célula A1 cujo conteúdo é 01.02.03.04? A célula A1 neste caso é do tipo texto. O resultado deveria ser 3.
Utilizando as Funções LEN() e SUBSTITUTE(), obtém-se o resultado desejado:
A fórmula em B1:
=LEN(A1)-LEN(SUBSTITUTE(A1;".";""))
(em Português):
=NÚM.CARACT(A1)-NÚM.CARACT(SUBSTITUIR(A1;".";""))
Subscrever:
Mensagens (Atom)