Listar todas as planilhas de outro documento em ComboBox (VBA) - Microsoft Office - Clube do Hardware
Listar todas as planilhas de outro documento em ComboBox (VBA)
Por nick4xd, 12 de maio de 2015 em Microsoft Office
Olá pessoal, estou com uma dúvida no seguinte:
Preciso listar todas as planilhas (exceto uma específica) de um documento X em uma ComboBox de um documento Y
Tenho dois documentos Excel;
Um se chama Doc1 e o outro se chama Doc2;
No Doc1, existem quatro planilhas, a "Plan1", "Plan2" e "Plan3", "PlanEspecífica";
No Doc2, tenho uma ComboBox no meu formulário;
Quero que essa ComboBox liste o nome de todas as Planilhas do Doc1 exceto o "PlanEspecífica";
No Doc2, eu já terei na célula A1, o caminho do Doc1, sendo necessário apenas, listar as Plans do Doc1 na ComboBox do Doc2;
O código irá abrir "Doc1" caso não esteja aberto.
Instale-o no módulo do "Form".
Private Sub UserForm_Initialize() Dim wb As Workbook, ws As Worksheet  On Error Resume Next  Set wb = Workbooks("Doc1")  On Error GoTo 0  If wb Is Nothing Then   Set wb = Workbooks.Open(Range("A1").Value)  End If   For Each ws In wb.Worksheets    If ws.Name <> "PlanEspecífica" Then     ComboBox1.AddItem ws.Name    End If   Next wsEnd Sub
Obrigado Osvaldo. Farei o teste hoje a noite, mas acho que vai dar certo.
Fiz algumas tentativas, mas me faltavam algumas coisinhas, que você já colocou aí.
Ok Osvaldo, deu certo.
Mas tem mais um detalhe que gostaria de fazer:
Além de listar todas a planilhas desejadas, gostaria de poder ter a opção de escolher no ComboBox, uma opção "Todos"
Para que eu possa fazer alteração em todas elas. Por exemplo:
No meu Doc2, seleciono a opção "Todos" no ComboBox, e, logo em seguida, um campo de texto será exibido (txtExemplo.Visible = True), que me permitirá editar a célula A1 de todas as planilhas do Doc1, exceto PlanEspecífica, ou seja,
ao selecionar "Todos" no ComboBox do Doc2, e digitar um texto no campo de texto txtExemplo e clicar em Inserir, esse texto será inserido na célula A1 da "Plan1", "Plan2" e "Plan3" do Doc1
Entendeu mais ou menos o que quero fazer? Vou deixar em anexo o documento de exemplo mais uma vez, com um campo de texto no formulário.
O exemplo já está quase pronto, creio que só falta editar a função do Botão cmdInserir para que seja feito a inserção do texto na célula A1 nas planilhas do Doc1, exceto no "PlanEspecífico"... Se puder me ajudar, ficarei grato!