-
Posts
11 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Bruno_BRP
-
-
11 minutos atrás, FMattos disse:
existe um evento chamado OnTime ( Application.OnTime) onde você pode determinar um horário específico para executar seu procedimento.
Abra o editor VBA e clique em Ajuda, Digite Application.OnTime e leia para ter melhores exemplos.
Vi isso no Social MSDN, pode ser que ajude.
Não consegue conversar com o pessoal da TI para liberar o agendador de tarefas? é uma ferramenta nativa do SO, não vejo problema na utilização.
vou tentar ver algo sobre esse ontime e tambem com o TI
obrigado por enquanto
-
estou na empresa, e isso não é possível aqui
6 minutos atrás, FMattos disse:Você não consegue utilizar o agendador de tarefas do windows para que ele abra o arquivo no horário determinado?
estou na empresa, e isso não é possível aqui
-
bom dia !
Tenho uma macro que envia o email informando uma situação dentro do Excel mas tenho que ficar abrindo o arquivo todo dia para que isso ocorra , tenho o codigo que estou usando para isso acontecer , gostaria de uma forma de automatizar esse envio para todo dia entre 8 e 9 horas da manha saísse essa informação para os remetentes
como uso o outlook diariamente queria fazer uma macro no próprio para abrir o arquivo e ativar a macro e apos o envio fechar o arquivo
Private Sub Worksheet_Change(ByVal Target As Range)
Dim OutApp As Object
Dim OutMail As Object
Dim texto As StringSet OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
linha = ActiveCell.Row - 1
If Target.Address = "$F$" & linha ThenIf Plan1.Cells(linha, 6) = "1" Then
texto = "Prezado(a) " & Plan1.Cells(3, 1) & "," & vbCrLf & vbCrLf & "Faltam" & " " & Plan1.Cells(2, 4) & " Dias para o inicío de suas férias em caldas novas" & vbCrLf & vbCrLf & "#Cerveja" & vbCrLf & vbCrLf & "#Viagem" & vbCrLf & vbCrLf & "#Aguas quentes "
End IfWith OutMail
.To = Plan1.Cells(linha, 1)
.CC = ""
.BCC = ""
.Subject = "Férias em Caldas Novas"
'.HTMLBody = texto
.Body = texto
'send
.Display 'Utilize Send para enviar o email sem abrir o Outlook
End With
On Error GoTo 0Set OutMail = Nothing
Set OutApp = Nothing
End IfEnd Sub
alguém pode me dar uma ajuda
obrigado
-
obrigado no momento , outra questão se puder me ajudar
no lugar de range("a1"). gostaria de usar uma variavel tipo activecell.value e não estou conseguindo
para que eu quero isso
para cada coluna eu tenho um cabeçalho em diferentes posições ao longo das abas em que vou estar copiando
por tanto quero fazer uma ação em que se A1 = A1 da outra coluna ele me copia a coluna toda e cola na que vou montar a lista , feito isso vou para a coluna B1 e B2 se forem iguais fazer o mesmo recurso se não pular ate serem iguais com isso vou estar montando minha lista sem estarem fora de coluna
um pouco complexo eu falando mas pode dar certo
abaixo um exemplo
Sub XXX()Workbooks("BD_02_Atualizado - Cópia.xlsm").ActivateRange("a1").SelectWorkbooks("BD2 Matriz.xlsx").ActivateRange("a1").SelectDox = ActiveCell.Activatea = Workbooks("BD_02_Atualizado - Cópia.xlsm").ActiveSheet.Range.Valueb = Workbooks("BD2 Matriz.xlsx").ActiveSheet.Range.ValueIf a = b ThenEnd Ifc = c + 1Workbooks("BD_02_Atualizado - Cópia.xlsm").ActivateActiveCell.Offset(0, c).Range("A1").SelectWorkbooks("BD2 Matriz.xlsx").ActivateActiveCell.Offset(0, c).Range("A1").SelectLoopEnd Sub
-
Bom dia a todos !!!
estou montando uma planilha que me trás as informações contidas em uma outra planilha só que em varias abas, retornando as para a planilha criada uma em baixo da outra tipo uma unica lista. isso ja esta acontecendo e esta bom o problema é que o meu cabeçalho não bate com alguns dentro das abas que estou fazendo esse processo deixando minha lista toda bagunçada.
minha pergunta é !!
como posso fazer uma consulta em outra planilha e ver se na mesma coluna é igual a minha e então copiar a coluna toda e jogar na mesma coluna da minha planilha formando uma lista com todas as abas
usei de inicio o cells.find mas não esta dando muito certo ou não estou sabendo usar
pensei em algo do tido
if Workbooks("BD_02_Atualizado.xlsm").Range(a1).value = Workbooks(Linta.xlsm").Range(a1).value then , mas não funciona desta forma.
sou novo no VBA então não entendo muito bem das formas de execução
alguem pode me ajudar
-
bom dia !
Estou com uma duvida em como uso o "thisworkbook.name"
no meu caso tenho duas planilhas que mudam de nome diariamente e com isso não consigo usar o sheets("xxx").select
com o thisworkbook.name identifico a planX mas quando estou no outro arquivo executando o restante da macro ele identifica a planY como sendo igual a planX
quero usar essa nomenclatura para para usar "X;Y" como referencia para mudar de arquivo.
alguém pode me ajudar
Exemplo do que quero que aconteça
Sub teste()''INICIO DA MACROSem_parar = ThisWorkbook.Name'''' ABRE o BD 01''x = Range("A1") + 1Dim Path As StringDim D As StringDim M As StringDim A As StringDim File1 As StringPath = "F:\Transporte\Banco de Dados\BD1 Controle de Cargas\BD01\2015\07_Julho\BD1 01 a "D = Format(Now, "DD")M = "." & Format(Now, "mm") & "."A = Format(Now, "yyyy") & ".xlsx"File1 = Path & nome & D & M & AWorkbooks.Open Filename:=File1 Range("A1").Activate ''' NESTE PONTO QUERO IDENTIFICAR QUAL É O MEU WORKBOOK bd01 = ThisWorkbook.Name ActiveCell.Offset(0, 0).Range("A1:br1").Select Range(Selection, Selection.End(xlDown)).Select Selection.Copy''''' COLA NO ARQUIVO DO SEM PARAR Workbooks("planX").Activate Range("A1").Activate Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("A1").Activate''''' Fecha BD01 Workbooks("planY").Activate Workbooks("plannY").Close FalseEnd Sub
-
Segue exemplo que cria a pasta backup caso nao exista e a funcao que cria backup
Sub CriaPasta_Backup()
On Error Resume Next
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FolderExists(ThisWorkbook.path & "\BACKUP") Then ' verifica se ja existe a pasta
Else: MkDir ThisWorkbook.path & "\BACKUP" ' se nao existir cria
End If
End Sub
Function BackXls()
Dim CopiaSegura As Object
Dim Caminho As String
MyXlsPath = ThisWorkbook.path & "\" & ThisWorkbook.Name
Caminho = ThisWorkbook.path & "\BACKUP\" 'Nome da pasta e nome de inicio para o banco de backup
Set CopiaSegura = CreateObject("Scripting.FileSystemObject")
CopiaSegura.CopyFile MyXlsPath, Caminho & Format(Now, "_ddmmyyyy") & ".XLSM"
End Function
é quase isso que quero que aconteça
dentro da minha planilha na celula c38 tenho uma formula que faz uma contagem numérica
quero que este numero seja meu arquivo
ficaria essa sequencia
backup > Mês > Recibo 01.pdf
fiz um teste nas linhas que me passou, mas o que eu realmete necessito é que
se não tem criar arquivo
se tem achar o arquivo e salvar dentro do mês o PDF
ate gerar o PDF eu estou conseguindo , o problema é que não estou conseguindo fazer gerar uma pasta com o mês antes
é quase isso que quero que aconteça
dentro da minha planilha na celula c38 tenho uma formula que faz uma contagem numérica
quero que este numero seja meu arquivo
ficaria essa sequencia
backup > Mês > Recibo 01.pdf
fiz um teste nas linhas que me passou, mas o que eu realmete necessito é que
se não tem criar arquivo
se tem achar o arquivo e salvar dentro do mês o PDF
ate gerar o PDF eu estou conseguindo , o problema é que não estou conseguindo fazer gerar uma pasta com o mês antes
Segue exemplo que cria a pasta backup caso nao exista e a funcao que cria backup
Sub CriaPasta_Backup()
On Error Resume Next
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FolderExists(ThisWorkbook.path & "\BACKUP") Then ' verifica se ja existe a pasta
Else: MkDir ThisWorkbook.path & "\BACKUP" ' se nao existir cria
End If
End Sub
Function BackXls()
Dim CopiaSegura As Object
Dim Caminho As String
MyXlsPath = ThisWorkbook.path & "\" & ThisWorkbook.Name
Caminho = ThisWorkbook.path & "\BACKUP\" 'Nome da pasta e nome de inicio para o banco de backup
Set CopiaSegura = CreateObject("Scripting.FileSystemObject")
CopiaSegura.CopyFile MyXlsPath, Caminho & Format(Now, "_ddmmyyyy") & ".XLSM"
End Function
o que fiz ate o momento foi isso, se tem uma pasta ele ja salva o arquivo se não tem ele cria a pasta e salva , agora queto deixar os arquivos salvos dentro do mes em uma pasta por mes dentro de backup
obrigado
'CRIA O PRIMEIRO ARQUIVO SE NÃO TIVEROn Error Resume NextIf Len(Dir("C:Recibos", vbDirectory) & "") > 0 Then' MsgBox "Você está tentando criar um diretório que já existe"ElseIf Len(Dir("C:Recibos", vbDirectory) & "") = 0 ThenMkDir "C:\Recibos\"MsgBox "Backup em PDF ficada no C:\Recibos\"End IfEnd If'SALVA O ARQUIVO EM PDF NA PASTA ESCOLHIDADim nome As StringDim endereco As String'E O LOCAL ONDE SALVA O ARQUIVO MAIS O NOME DO ARQUIVO E O NUMERO DO PEDIDOnome = "C:\Recibos\" & Range("c38").Value & ".pdf"'LINHAS SELECIONADAS QUE APARECERAM NO PDFActiveSheet.Range("C3:I38").ExportAsFixedFormat Type:=xlTypePDF, Filename:=nomeObrigado a todos , estou fechando este post pois chequei no meu objetivo
segue
Private nova_pasta()Dim Path As StringDim D As StringDim File1 As StringPath = "C:\Recibos\"D = Format(Now, "MMMM") & "\"File1 = Path & nome & DOn Error Resume NextIf Len(Dir((File1), vbDirectory) & "") > 0 ThenElseIf Len(Dir((File1), vbDirectory) & "") = 0 ThenMkDir "C:Recibos"MkDir (File1)MsgBox "Mês de Backup foi alterado C:\Recibos\"End IfEnd Ifnome = (File1) & Range("c38").Value & ".pdf"'LINHAS SELECIONADAS QUE APARECERAM NO PDFActiveSheet.Range("C3:I38").ExportAsFixedFormat Type:=xlTypePDF, Filename:=nomeEnd Sub -
boa tarde !
Estou usando o codigo abaixo para gerar uma pasta de arquivo do diretorio C:\
esta funcionando ok , gostaria agora de fazer ele gerar uma sub pasta com o mes corrente para manter o backup de registros por mes
estava pensando em alguma varialvel que eu possa colocar no MkDir e ele entenda isso como um caminho
quero usar tambem a Celula A1 que contera a informação para gerar esse caminho
alguma ideia para me ajudar?
On Error Resume NextIf Len(Dir("C:Recibos", vbDirectory) & "") > 0 Then' MsgBox "Você está tentando criar um diretório que já existe"ElseIf Len(Dir("C:Recibos", vbDirectory) & "") = 0 ThenMkDir "C:\Recibos\"MsgBox "Backup em PDF ficada no C:\Recibos\"End IfEnd If -
obrigado
-
bom dia !
gostaria de complementar minha macro com um nome de pasta
ex: no meu PC eu defini uma pasta no C: como "Recibos de venda" , se eu abrir este arquivo em outra maquina não terá esta pasta e ira dar erro na macro , não gerando o arquivo
o que tenho ate agora e esta funcionando e as linhas abaixo
alguem pode me ajudar?
'SALVA O ARQUIVO EM PDF NA PASTA ESCOLHIDA COM O NOME ESCOLHIDO DE UMA CELULA OU MAISDim nome As StringDim endereco As String'E O LOCAL ONDE SALVA O ARQUIVO MAIS O NOME DO ARQUIVO E O NUMERO DO PEDIDOnome = "C:\Recibos de Venda\" & Range("c38").Value & ".pdf"'SAO AS SELECIONADAS QUE APARECERAM NO PDFActiveSheet.Range("C3:I38").ExportAsFixedFormat Type:=xlTypePDF, Filename:=nome
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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
Envio de Email
em Microsoft Office e similares
Postado
o ontime não me ajuda por que o arquivo estara fechado , caso eu queira deixar ele aberto iria funcionar