Ir ao conteúdo
  • Cadastre-se
PedroCosta_85

Excel - vba função range

Recommended Posts

Bom dia,

Estou com problemas em descobrir uma maneira de utilizar a funçao RANGE mas colocar alem de texto utilizar uma formula na mesma celula.

É possivel?

Eu tenho andado a tentar, mas diz FALSO, com a seguinte expressão:

 

Sub InsertTodaysDate()
    
    Range("A4").Select
    Selection.Formula = "Prozinco " & Selection.Formula = "=text(now(),""mmm dd yyyy"")"
      
End Sub

 

Eu queria era que ele escrevesse "Prozinco - 12-12-2012" , sendo a data com a função HOJE

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quase lá.

 

Só houve uma pequena confusão quanto ao uso dos idiomas inglês x português das expressões e separadores usados na fórmula.

Pode usar qualquer uma dessas duas expressões:

Range("A5").Select
Selection.Formula = "=""Prozinco - "" & TEXT(TODAY(),""mm-dd-aaaa"")"

 

ou

 

Range("A5").Select
Selection.FormulaLocal = "=""Prozinco - "" & TEXTO(HOJE();""mm-dd-aaaa"")"

Repare nas diferenças:

 

.Formula x .FormulaLocal

TEXT(...) x TEXTO(...)

TODAY() x HOJE()

       ,       x     ;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Edson.... Impecável ;) Funciona 5 estrelas.

 

Estava agora a tentar aproveitar esse nome automatico para guardar o ficheiro com esse mesmo nome mas dá um erro 1004 :/

utilizei a seguinte:

 

Sub Salva_Planilha()

 

Dim Nome As String
Nome = Worksheets(216).Range("A1")

ActiveWorkbook.SaveAs Filename:="Y:\Pedro Costa\Prozinco\" & Nome & ".xls", _
FileFormat:=xlNoRestrictions, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

End Sub

 

A folha em questao é a ultima de todas que está mencionada no excel como folha 216 dai ter utilizado no "Worksheets".

Eu utilizo o Excel 2013, nao sei se faz diferença na linguagem de programação. Faz?

duv.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teste agora com as alterações.

 

Sub Salva_Planilha()
Dim Nome As String, strPath As Variant
    
    Nome = Worksheets("Total").Range("A1").Value
    strPath = "Y:\Pedro Costa\Prozinco\"
    ActiveWorkbook.SaveAs Filename:=strPath & Nome & ".xls", _
    FileFormat:=56

End Sub

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×