Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
Por FilipeTeixeira
Posts
#8155
Bom dia pessoal.

Eu achava que sabia um pouquinho de Excel, até que precisei usar VBA :D . Estou sem tempo para aprender, então lhes peço ajuda se for possível.
Tenho uma planilha bem simples que é só para lançar um pedido e enviar por email. Eu queria automatizar o controle dos pedidos e para isso preciso dar o primeiro passo, que é resolver o problema abaixo descrito.

Problema: Criar nova aba com um nome especifico, (Se possível) puxar o layout da pagina velha. (Fazendo isso eu consigo criar uma aba de controle dos pedidos com data de vencimento, fornecedor e outras coisas que imagino).

Dei uma pesquisada e achei um código (abaixo) que cria uma nova aba com um nome. Ok, mas eu queria que o nome fosse assim. sht.Name ("Pedido"&"-"&"Texto da célula C13"&"-"&"data").
Ficaria algo do tipo: Pedido-fornecedor-data.
Código: Selecionar todos
Sub Adicionar_Aba5()


    Dim Response As VbMsgBoxResult
    Dim sht As Worksheet
    Response = MsgBox("Deseja inserir uma nova aba com formato de dia e hora?" _
        , vbQuestion + vbYesNoCancel)
    If Response = vbYes Then
        Set sht = Worksheets.Add
        sht.Name = Format(Now, "dd-mmm-yyyy_hhnnss")
    ElseIf Response = vbNo Then
        Worksheets.Add
    Else
        Exit Sub
    End If
       MsgBox "Nova aba adicionada", vbInformation, "Adicionar nova aba"


End Sub
Layout: Existe algum comando que "Chame" uma Macro Global ? Se existir cria-se uma Macro que copia a plan velha e cola na plan nova. Se não existir tal comando, não faço ideia de como resolver.

Segue a planilha em anexo.

Se não for possível fazer isso me avisem que parto para outra alternativa.

Obrigado!
Você não está autorizado a ver ou baixar esse anexo.
#8160
Bom dia!!

Tente algo assim...
Código: Selecionar todos
Sub Adicionar_Aba5()
    Dim Response As VbMsgBoxResult
    Dim sht As Worksheet
    Response = MsgBox("Deseja inserir uma nova aba com formato de dia e hora?" _
        , vbQuestion + vbYesNoCancel)
    If Response = vbYes Then
        With Sheets("Plan1")
            '.Visible = True
            .Copy After:=Sheets(Sheets.Count)
            '.Visible = False
        End With
        ActiveSheet.Name = "Pedido" & "_" & Worksheets("Plan1").Range("C13").Value & "_" & Format(Now, "dd-mmm-yyyy")
    ElseIf Response = vbNo Then
        Worksheets.Add
    Else
        Exit Sub
    End If
       MsgBox "Nova aba adicionada", vbInformation, "Adicionar nova aba"
End Sub
Att
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord