About Me
Seguidores
Estatisticas
Depois de se ter instalado o Microsoft Office Service Pack 3 (SP3), não é possível abrir, no Microsoft Excel 2003, workbook files do Microsoft Excel 5.0/95 que contenham macros do Visual Basic for Applications (VBA) .
Ver mais em: Ajuda e Suporte Técnico Microsoft
Se pretendermos verificar o número de ocorrências num determinado Range, sejam as ocorrências "MG", "VM", "PR" e "MD", como no seguinte exemplo:
podemos utilizar a seguinte fórmula, adaptada a cada uma das ocorrências:
="MG" & " " &SUMPRODUCT(--(RIGHT(A1:F2;2)="MG"))
="MV" & " " &SUMPRODUCT(--(RIGHT(A1:F2;2)="VM"))
="PR" & " " &SUMPRODUCT(--(RIGHT(A1:F2;2)="PR"))
="MD" & " " &SUMPRODUCT(--(RIGHT(A1:F2;2)="MD"))
Tópicos relacionados:
'---------------------------------------------------------------------------------------
' Procedure : Test
' DateTime : 05-10-2007 17:57
' Author : JRod
' Purpose : Apagar Row da célula activa na Sheet1 e 1ª Row da Sheet2
' : cuja entrada seja igual à célula activa
'---------------------------------------------------------------------------------------
'
Sub Test()
Dim c As Range, myRange As Range
On Error Resume Next
Set myRange = Sheets(2).Range("A1:A100")
For Each c In myRange
If c.Value = ActiveCell.Value Then
c.EntireRow.Delete
End If
Next c
ActiveCell.EntireRow.Delete
End Sub
' Procedure : Workbook_Open
' DateTime : 05-10-2007 18:00
' Author : JRod
' Purpose : Abre Macro com click no botão direito do rato
'---------------------------------------------------------------------------------------
'
Private Sub Workbook_Open()
Dim MyMenu As Object
Set MyMenu = Application.ShortcutMenus(xlWorksheetCell) _
.MenuItems.AddMenu("A minha Macro", 1)
With MyMenu.MenuItems
.Add "Test", "Test", , 1, , ""
End With
Set MyMenu = Nothing
End Sub
Tópicos relacionados:
Recebi hoje a seguinte mensagem da Microsoft:
" Dear Jorge Rodrigues,
Congratulations! We are pleased to present you with the 2008 Microsoft® MVP Award!".
Ou seja, fui galardoado, pelo 3º ano consecutivo, Microsoft MVP Excel!!!
URRA!!!
Clicar no banner para aceder ao link
Data: 24 de Outubro (15h00-18h30)
Local: Auditório dos Oceanos, Casino de Lisboa - Parque das Nações
Produtos: Microsoft Expression, Silverlight
Destinatários: Designers
Vejamos o exemplo:
Na folha1:
Private Sub Worksheet_Change(ByVal Target As Range)
'JRod - Microsoft [MVP] - Excel
'blog: http://EXCELer.blogspot.com
'site: http://www.exceler.org
'email1: mail@exceler.org
'email2: blog.exceler@netcabo.pt
'
Const WS_RANGE As String = "A2:A10"
Dim c As Range, myRange As Range
On Error GoTo ws_exit
Application.EnableEvents = False
If Not Intersect(Target, Me.Range(WS_RANGE)) Is Nothing Then
With Target
Set myRange = Sheets(1).Range("A2:A10")
For Each c In myRange
If c.Value = ActiveCell.Offset(-1, 0).Value Then
If c.Offset(0, 1).Value = "S" Then
MsgBox "O trabalhador encontra-se de Baixa." & Chr(10) & "Inserção Impossível!", Buttons:=vbInformation
ActiveCell.Offset(-1, 0).Activate
ActiveCell.Value = ""
End If
End If
Next
End With
End If
ws_exit:
Application.EnableEvents = True
End Sub
Tópicos relacionados:
=SUMPRODUCT((MÊS(A1:A1000)=6)*B1:B1000)
Eu, resolvi apresentar a seguinte alternativa:
{=SUM((MONTH(A1:A1000)=6)*(B1:B1000))}'como um array, ou seja com CTRL+SHIFT+ENTER para obter {}
=SUMIF(A1:A1000;">="&DATE(2007;6;1);B1:B1000)-SUMIF(A1:A1000;">"&DATE(2007;6;30);B1:B1000)
Bom, a escolha é vossa!!!
Tópicos relacionados:
A imagem do que se pretende:
O segmento de Código, apenas para o fim em vista:
For Each C In Me.Controls
If TypeName(C) = "TextBox" Or TypeName(C) = "ComboBox" Then
If C.Value = "" Then
MsgBox "Por favor, preencha todos os campos!"
C.SetFocus
Exit Sub
End If
End If
Next
Créditos para Bill Manville
Tópicos relacionados: