Saberexcel - site das macros
Macro do Aplicativo Microsoft Excel VBA, contém renomeia a folha de planilha ativa, se a célula (D1) estiver preeenchida,
será inserido o nome relativo ao valor da célula(D1), senão será preenchido com o nome "Nova Planilha Saberexcel"
Sub Nomeando_planilha_ativa()
On Error Resume Next
If Range("D10").Value = "" Then
ActiveSheet.Name = "Nova Planilha Saberexcel"
MsgBox "Nome [" & ActiveSheet.Name & " ] porque a célula D10 está vazia", _
vbInformation, "Saberexcel - o site das macros"
Exit Sub
Else
ActiveSheet.Name = Range("D10").Value
MsgBox "Planilha nomeada como [ " & Range("D10") & " ] valor da célula[D10]", _
vbInformation, "Saberexcel - o site das macros"
End If
End Sub
Aprenda Aplicativo Microsoft Excel VBA com SaberExcel
Baixe a planilha exemplo da macro acima
vba worksheet renomear planilha ativa dados celula (17.22 kB 2010-11-30 18:50:05)
Comentários
'//========' SEJA UM ASSINANTE ESCOLA SABEREXCEL
'------------------------------------'
Prezado Wagner, veja bem, não sei como é o seu projeto, como é um assunto de conhecimento Pleno em Programação, estou lhe passando um a rotina que faz uma varredura no Workbook Ativo, e lista os macros existentes, com isso você poderá fazer o For em seus Livros Abertos,
e rodar o macro, assim que encontrar o Macro (X) que voce procura, neste ponto voce manda fechar o Workbook.
Fique com Deus,
Expedito Marcondes.
"//=============ABAIXO OS PROCEDIMENTOS /======'
'macro habilita a referencia:
'Microsoft Visual Basic for Applications Extensibility 5.3
esse macro insere a referencia Microsoft Visual Basic for Applications
'Extensibility 5.3 para que o macro funcione
Sub Listar_macros()
On Error Resume Next '< error = referencia endereço set
'para adicionar a referencia (biblioteca)
'set referencia Microsoft Visual Basic for Applications
'Extensibility 5.3
ThisWorkbook.VB Project.Referen ces.AddFromGuid _
"{0002E157-0000 -0000-C000-0000 00000046}", 5, 3
'agora chamamos a rotina para listar os macros
Call ListandoNomesMacros
End Sub
'//==================='
Private Sub ListandoNomesMa cros()
Dim N&, Contador&, vListaMacros(20 0), Lista$
Dim Component As VBComponent
For Each Component In ActiveWorkbook. _
VBProject.VBCom ponents
With Component.CodeM odule
Contador = .CountOfDeclara tionLines + 1
Do Until Contador >= .CountOfLines
vListaMacros(N) = .ProcOfLine(Con tador, _
vbext_pk_Proc)
Contador = Contador + .ProcCountLines _
(.ProcOfLine(Con tador, vbext_pk_Proc), _
vbext_pk_Proc)
Lista = Lista & vbCr & vListaMacros(N)
If Contador < .CountOfLines Then N = N + 1
Loop
End With
N = N + 1
Next
MsgBox "LISTA DOS MACROS NO LIVRO ATIVO " & vbCrLf & Lista, , "Listando Macros - Escola SaberExcel"
End Sub
'//======='
'esses macros abaixo for am criados com a finalidade de preencher a lista de macros solicitado pelos procedimentos acima.
'//======='
Private Sub sbx_nao_existe()
End Sub
Private Sub sbx_nao_faz_nada()
End Sub
Private Sub sbx_procura_por_nada()
End Sub
Tenho uma pasta excel com 11 planilhas(abas) .
Na plan1 tenho de A1 ate A10, dez nomes.
Quero que os nomes das planilhas 2 até 11 sejam aquele 10 nomes da plan1.
Caso A1 de plan1 mude de Pedro para Paulo, a plan2 que tem nome Pedro mudará para Paulo.
up!
para atender sua dúvida, fiz os seguintes códigos, fácil e eficaz.
'// no link abaixo esta disponível a planilha e os códigos abaixo.
saberexcel.com.br/.../...
'//=======
Sub sbx_copiar_p_todas()
Dim wPlan As Worksheets
Dim vLin As Integer
Set f1 = Planilha1
Set wkf = Application.WorksheetFunction
For st = 2 To Sheets.Count
Set sbx = Sheets(st) 'somente para substituir (sheets(st))
For vLin = 1 To f1.Cells(Rows.C ount, "a").End(xlUp). Row
sbx.Cells(vLin, "a").Value = f1.Cells(vLin, "a")
sbx.Tab.ColorIn dex = wkf.RandBetween (3, 56)
sbx.Columns("A" ).AutoFit
Next vLin
Next st
f1.[d3].Value = "Valores copiados para todas folhas de planilhas"
Set f1 = Nothing
Set Sh = Nothing
Set wkf = Nothing
End Sub
Fiquem com Deus,
Expedito Marcondes.
Assine o RSS dos comentários