Views

...

Important:

Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.

E-mails

Deixe seu e-mail para receber atualizações...

eBook Promo

Mostrando postagens com marcador índice. Mostrar todas as postagens
Mostrando postagens com marcador índice. Mostrar todas as postagens

VBA Excel - Criando Índice de todas as Abas - Create An Index Page



Nós desenvolvedores gostaríamos todos de viver num mundo ideal onde tivéssemos bastante tempo para analisar os dados que transformaremos em informações. Seria muito importante que pudéssemos gastar algum tempo prospectando o modo como as informações serão analisadas pelos usuários finais. 

Raras são as vezes onde conseguimos tempo para isso. O código a seguir implementa uma facilidade que não requererá nada do nosso tempo para desenvolver. Apenas podemos copiar e colar.

Tornar os Dashboards mais funcionais, rápidos e práticos é uma das nossas obrigações.

Estamos constantemente sob o paradoxo de não termos tempo para implementar as facilidades que farão com que os usuários utilizem massivamente as nossas soluções. 

A criação de um índice para as diversas planilhas dentro do nosso workbook certamente será bem vinda.

- Acrescente a chamada a este procedimento assim que o workbook for aberto:


Private Sub Workbook_Open()

    Call CreateIndex

End Sub

Crie um novo módulo e cole o conteúdo abaixo:


Sub CreateIndex()

    Let Application.DisplayAlerts = False

    

    On Error Resume Next

    

    Sheets("Index").Delete

    

    On Error GoTo 0

    

    Set myIndex = Sheets.Add(Sheets(1))

    

    Let myIndex.Name = "Index"

    Let iRow = 1

    

    For Each theSheet In ThisWorkbook.Sheets

        If iRow = 1 Then

            Let Cells(iRow, 1).Value = "INDEX"

        Else

            ActiveSheet.Hyperlinks.Add Anchor:=Cells(iRow, 1) _

             , Address:="", SubAddress:= _

             "'" & theSheet.Name & "'" & "!A1", TextToDisplay:=theSheet.Name

        End If

        

        Let iRow = iRow + 1

    Next



    Sheets("Index").Move After:=Sheets(1)

End Sub


Tags: VBA, index, sheet, page, create, índice, planilha, worksheet



VBA Excel - 05.10 - Referenciando planilha - Index - Referenciando pelo índice



É sempre bom lembrar-se de que:

workbooks = Arquivo que contém todas as planilha em diversas pastas.

worksheets = Planilhas individuais, contidas nas abas.


5 - Index - Referenciando um Workbook pelo índice:

Talvez nos seja imposta a condição de que o único modo para fazermos a referência a um workbook seja através do valor do índice. (Sim talvez esteja alterando uma aplicação de terceiros, por exemplo.)

O MS Excel acessa o valor do índice quando o mesmo é aberto nele. o primeiro workbook aberto recebe o valor 1 de índice, o segundo workbook aberto receberá o valor 2 de índice, e assim sucessivamente.

É claro que não é tão simples, este método tem um pequeno problema que o acompanha, pois quando deletamos um workbook ou o fechamos o valor do índice de toda a coleção Workbook muda.

Por exemplo, digamos que tenhamos 3 worbooks abertos com os seguintes índices de valor:

StatisticalDashboardFunctions.xls - 3
111112.xls - 2
HumanResources.xls - 1

Se uma tarefa em particular depende que todos os três workbooks estejam abertos utilizando-se dos valores dos índices destes, poderá ocorrer alguns desencontros quando os 'instanciarmos': Workbooks(1).Activate

Isto ativará HumanResources.xls como aberto, se fechá-la a StatisticalDashboardFunctions.xls e 111112.xls se moverão para baixo no índice: 

StatisticalDashboardFunctions.xls virá a ter o índice como 2

Ao passo que 111112.xls terá o índice como 1.

Usar o valor do índice como referência para os workbooks não é necessariamente errado, mas precisa entender o que está envolvido nesta escolha, sobre os possíveis erros que poderão ocorrer e como os corrigirá.

Tags: VBA, Excel, Series, reference, referenciando, workbook, worksheet, index, índice

eBooks VBA na AMAZOM.com.br

LinkWithinBrazilVBAExcelSpecialist

Related Posts Plugin for WordPress, Blogger...

Vitrine