Jump to content
Sign in to follow this  
sagostinho

código vba

Recommended Posts

sagostinho

olá se alguem me pudesse ajudar  neste trabalho eu tenho um livro em excel 2003 que tem 50 folhas e o que eu queria fazer era o seguinte a folha matriz que é a primeira tem 50 códigos desde a1 até a50 e eu queria fazer com que a folha1 mudasse o nome com o que estava na folha matriz na célula a1. a folha 2 mudasse o nome com o que estava na folha matriz na celulla a2 e assim sucessivamente não sei se me estou a fazer entender se me pudessem ajudar agradecia muito mas mesmo muito.obrigado

Share this post


Link to post
Share on other sites
rogi_cps

meu amigo.. tenta ae... 

activesheet.name="a1"

no lugar de "A1", pod eusar a formulação de Range para poder usar arrays ou simples verificação. 

activesheet.name=
'para range de células
activesheet.range(cells(x,y), cells(w,z)).value

'para célula única
activesheet.name=activesheet.cells(x,y).value

X,Y,W,Z são variáveis que representam , linha , coluna nesta ordem.

Share this post


Link to post
Share on other sites
sagostinho
:thumbsup: obrigada mas eu não percebo quase nada de vba eu coloquei o código que pusseste e não deu nada devo ter feito mal alguma coisa porque as folhas não estao a ir buscar o nome igual ao que esta nas celulas correspondentes se pudesses por o código completo para eu colar la agradecia-te imenso isto é para um trabalho. obrigada

Share this post


Link to post
Share on other sites
rogi_cps

você teria que criar uma forma de que, quando vc clica na planilha dois, ele busque na célual A2.

Caso queira me envia a planilha ou coloca em um site de up para poder baixar.. eu dou uma olhada no seu arquivo e vejo como adaptar o código para vc... sem problemas.

Valeu!

Share this post


Link to post
Share on other sites
rogi_cps

Acrescenta este código na plan1 (matriz)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo ErrSel

Dim Y
Dim ValorCel As String
Dim ValorPlan

Y = 1

Do While Y < 1000
ValorCel = ActiveSheet.Cells(1, Y).Value
ValorPlan = Worksheets(Y + 1).Name
If ValorCel <> ValorPlan Then
    Worksheets(Y + 1).Name = ActiveSheet.Cells(1, Y).Value
    Exit Do
ElseIf ActiveSheet.Cells(1, Y).Value = "" Then
    Exit Do
Else
    Y = Y + 1
End If

Loop

ErrSel:

End Sub

Espero que isso tenha ajudado.  Qualquer coisa que precisar... e só falar!

Share this post


Link to post
Share on other sites
sagostinho

:cheesygrin: obrigada isto vai me poupar imenso tempo lá no trabalho :) muitoooooooooo obrigada :) funciona espectacular

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.