Como listar todos os aplicativos abertos (atualmente em execução) no Excel?
Na verdade, você pode listar todos os aplicativos abertos que só são exibidos ao pressionar as teclas Alt + Tab em seu computador no Excel com código VBA em execução. O método do artigo pode ajudá-lo.
Liste todos os aplicativos de abertura (atualmente em execução) com código VBA
Liste todos os aplicativos de abertura (atualmente em execução) com código VBA
Faça o seguinte para listar todos os aplicativos abertos no Excel.
1. Em uma pasta de trabalho do Excel, pressione o outro + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.
2. No Microsoft Visual Basic para Aplicações janela, pressione Iinserir > Módulo. Em seguida, copie e cole o código VBA na janela Código. Veja a imagem:
Código VBA: lista todos os aplicativos abertos no Excel
Private Declare PtrSafe Function apiGetClassName Lib "user32" Alias _
"GetClassNameA" (ByVal Hwnd As Long, _
ByVal lpClassname As String, _
ByVal nMaxCount As Long) As Long
Private Declare PtrSafe Function apiGetDesktopWindow Lib "user32" Alias _
"GetDesktopWindow" () As Long
Private Declare PtrSafe Function apiGetWindow Lib "user32" Alias _
"GetWindow" (ByVal Hwnd As Long, _
ByVal wCmd As Long) As Long
Private Declare PtrSafe Function apiGetWindowLong Lib "user32" Alias _
"GetWindowLongA" (ByVal Hwnd As Long, ByVal _
nIndex As Long) As Long
Private Declare PtrSafe Function apiGetWindowText Lib "user32" Alias _
"GetWindowTextA" (ByVal Hwnd As Long, ByVal _
lpString As String, ByVal aint As Long) As Long
Private Const mcGWCHILD = 5
Private Const mcGWHWNDNEXT = 2
Private Const mcGWLSTYLE = (-16)
Private Const mcWSVISIBLE = &H10000000
Private Const mconMAXLEN = 255
Sub ListName()
Dim xRg As Range
Dim xStr As String
Dim xStrLen As Long
Dim xHandle As Long
Dim xHandleStr As String
Dim xHandleLen As Long, xHandleStyle As Long
On Error Resume Next
Set xRg = Application.InputBox("Please select a range(single cell):", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
xRg(1).Activate
xHandle = apiGetWindow(apiGetDesktopWindow(), mcGWCHILD)
Do While xHandle <> 0
xStr = String$(mconMAXLEN - 1, 0)
xStrLen = apiGetWindowText(xHandle, xStr, mconMAXLEN)
If xStrLen > 0 Then
xStr = Left$(xStr, xStrLen)
xHandleStyle = apiGetWindowLong(xHandle, mcGWLSTYLE)
If xHandleStyle And mcWSVISIBLE Then
ActiveCell.Value = xStr
ActiveCell.Offset(1, 0).Activate
End If
End If
xHandle = apiGetWindow(xHandle, mcGWHWNDNEXT)
Loop
End Sub
3. aperte o F5 chave para executar o código. No surgimento Kutools for Excel caixa de diálogo, selecione uma célula na qual deseja listar todos os aplicativos em execução e clique no botão OK botão. Veja a imagem:
Agora, todos os aplicativos abertos são listados na coluna selecionada imediatamente, conforme mostrado abaixo na captura de tela.
Artigos relacionados:
- Como listar todas as instâncias correspondentes de um valor no Excel?
- Como listar todos os dias como data em um mês especificado no Excel?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!