Notifications
Clear all

Inserir Formula e Formato Célula por VBA

1 Posts
1 Usuários
0 Reactions
783 Visualizações
(@marcao)
Posts: 1
New Member
Topic starter
 

Bom dia pessoal,

Tenho a planilha abaixo e preciso inserir uma fórmula e depois formatar o campo como data, se alguém puder me ajudar, seguem as informações:

 

Sub Importar()

'On Error GoTo Erro

Dim Objeto As Object
Dim Documento As Object
Dim Linha As String 'manipular linha documento
Dim i As Long 'acompanhar em qual posição a macro está
Dim Arquivo As String
Dim Texto, a() As String

Dim LinhaPlan As Double 'qual linha vai salvar
LinhaPlan = 1

With Planilha1

Do Until .Cells(LinhaPlan, 1).Value = "" 'encontrar linha vazia
LinhaPlan = LinhaPlan + 1
Loop

End With

Set Objeto = CreateObject("scripting.filesystemobject")

Arquivo = Application.GetOpenFilename(Filefilter:="Texto, *.txt")

If Arquivo = "" Or Arquivo = "Falso" Then 'identificar se o usuário selecionou um arquivo
Exit Sub
End If

Set Documento = Objeto.opentextfile(Arquivo, 1, False) 'abrir o documento e deixa-lo invisivel

With Documento

Do Until .AtEndofStream

Linha = .ReadLine 'pega toda linha para analisar

Texto = Linha
Texto = VBA.Replace(Texto, " ", " ") 'analisar a linha se tem 2 espaços e trocar por 1

a() = VBA.Split(Texto, ",") 'analisa a linha e quebra em posições conforme o delimitador ;

Planilha1.Cells(LinhaPlan, 1).Value = a(2)
Planilha1.Cells(LinhaPlan, 2).Value = a(4)
Planilha1.Cells(LinhaPlan, 3).Value = a(5)
Planilha1.Cells(LinhaPlan, 4).Value = a(8)
Planilha1.Cells(LinhaPlan, 5).Value = a(11)
Planilha1.Cells(LinhaPlan, 6).Value = a(29)
Planilha1.Cells(LinhaPlan, 7).Value = a(30)
Planilha1.Cells(LinhaPlan, 8).Value = a(33)
Planilha1.Cells(LinhaPlan, 9).Value = a(47)
Planilha1.Cells(LinhaPlan, 10).Value = a(48)
Planilha1.Cells(LinhaPlan, 11).Value = a(49)
Planilha1.Cells(LinhaPlan, 12).Value = a(55)
Planilha1.Cells(LinhaPlan, 13).Value = a(56)
Planilha1.Cells(LinhaPlan, 14).Value = a(57)
Planilha1.Cells(LinhaPlan, 15).Value = a(80)
Planilha1.Cells(LinhaPlan, 16).Value = a(81)
Planilha1.Cells(LinhaPlan, 17).Value = a(101)

LinhaPlan = LinhaPlan + 1

Loop

End With

Arquivo = ""
Documento.Close

Set Documento = Nothing
Set Objeto = Nothing

MsgBox "Importado com sucesso", vbInformation, "IMPORTAR"
Exit Sub

Erro:
MsgBox "Erro", vbCritical, "ERRO"

End Sub

 

- preciso inserir essa fórmula (=((( CELL +( - 3* 3600 ))/ 86400 )+ 25569 )) com o formato dddd,dd/mmmm/aaaa hh:mm:ss, isso tem que ser aplicado nessa linha: Planilha1.Cells(LinhaPlan, 2).Value = a(4)

 
Postado : 18/01/2023 10:56 am
Tags do Tópico