Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 Macro para passar valores de um livro para outro

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
CJCM



Mensagens : 35
Data de inscrição : 11/07/2014
Idade : 37
Localização : Lisboa

MensagemAssunto: Macro para passar valores de um livro para outro   Seg Jul 13, 2015 4:44 pm

Boa tarde,

Preciso da vossa ajuda para o seguinte. Tenho dois ficheiros, sendo que um deve carregar o outro, a questão é que quero que seja manual e sem interrupções. Ou seja, a informação só passa quando um utilizador colocar "OK" no final da linha a passar para o outro ficheiro, caso contrário não deve passar.
As passagens deve ser seguindas, ou seja, se eu tiver uma linha "OK" a outra "KO" e ainda outra "OK", deve passar as duas "OK" sem linhas em branco, quando a "KO" passar a "OK" fica na primeira linha vazia que encontrar. Portanto os ficheiros não têm as linhas pela mesma ordem.

Se não me fiz entender digam que envio um ficheiro para entenderem o meu problema.

Obrigado

CJCM
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Macro para passar valores de um livro para outro   Seg Jul 13, 2015 11:21 pm

Boa tarde!!

Poste seu arquivo modelo!

Obs: Eu só tenho acesso a link's em casa.....

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
CJCM



Mensagens : 35
Data de inscrição : 11/07/2014
Idade : 37
Localização : Lisboa

MensagemAssunto: Re: Macro para passar valores de um livro para outro   Ter Jul 14, 2015 12:54 pm

Bom dia,

Em anexo os ficheiro onde preciso de ajuda. O ficheiro de nome "conferências" vai carregar o ficheiro "Factura" em campos especificos (ver letras em baixo).

A informação só passa para o ficheiro "Facturas" quando no ficheiro "conferências" o utilizador colocar na coluna R "Validação para pagamento" "OK", enquanto estiver "KO" não deve passar. O meu problema é que se a linha 1 do ficheiro de "conferências" tiver "KO" e a linha 2 tiver "OK" a linha 2 deve passar para a primeira linha do ficheiro "Facturas", de forma que não fiquem linhas vazias e os "OK" vão sendo carregados de seguida, e quando um "KO" passar para "OK" deve ir para a primeira linha vazia que encontrar, portanto a ordem dos ficheiros é diferente, mas o que interessa é passar, não interessa a ordem.

Não sei se fui clara a explicar, peço desculpa.


http://we.tl/JoUOgVSUDI

Obrigado pela ajuda!

CJCM
Voltar ao Topo Ir em baixo
Ver perfil do usuário
CJCM



Mensagens : 35
Data de inscrição : 11/07/2014
Idade : 37
Localização : Lisboa

MensagemAssunto: Re: Macro para passar valores de um livro para outro   Sex Jul 24, 2015 1:01 pm

Bom dia,

Entretanto já consegui construir uma macro, no entanto está a dar-me um erro que não consigo perceber o porquê, assinalei a linha com <--------


Option Explicit

Sub Teste()


Dim Wsht As Worksheet, WbkCF As Workbook, WbkPF As Workbook, Path As String, WshtTA As Worksheet, WshtFR As Worksheet
Dim cell As Range, WshtCR As Worksheet, Rng As Range

Set WbkPF = Workbooks("Pag_Fornecedores_2015 - Template.xlsb")

With WbkPF
Set WshtFR = .Worksheets("Facturas-Requisições")
Set WshtTA = .Worksheets("Tabelas Auxiliares")
End With

With WshtTA
Path = .Range("G14")
If Right(Path, 1) <> "\" Then
Path = Path & "\"
Else
Path = Path
End If
End With


Set WbkCF = Workbooks.Open(Path & "Conferência de facturas - Template.xlsb", UpdateLinks:=True, ReadOnly:=True)

Debug.Print WbkCF.Name
' Desbloquear todas as worksheets

For Each Wsht In WbkPF.Worksheets
With Wsht
If .ProtectContents Then
.Unprotect Password:="--------" '<----------COLOCAR PASSWORD
End If
End With
Next Wsht


' copiar informação da worksheet "Conferências Req." do workbook "Conferência Facturas" para a worksheet "Facturas-Requisições" do workbook "Pag_Fornecedores_2015 - Template"
' sempre que esteja registado "OK" na coluna R da worksheet "Conferências Req." do workbook "Conferência Facturas"

Set WshtCR = WbkCF.Worksheets("Conferências Req.")

With WshtCR

For Each cell In .Range("s8:s" & .Range("s1048576").End(xlUp).Row)
If cell.Value = "OK" Then
With WshtFR
Set Rng = .Range("H:H").Find(what:=cell.Offset(0, -7), LookIn:=xlValues, lookat:=xlWhole)
If Rng Is Nothing Then
' adicionar prazo pagamento
' código abaixo copia a data da factura worksheet "Conferências Req." do workbook "Conferência Facturas" para a worksheet "Facturas-Requisições" do workbook "Pag_Fornecedores_2015 - Template"
cell.Offset(0, -7).Copy
.Cells(.Range("1048576").End(xlUp).Row + 1, Cool.PasteSpecial xlPasteValues <-----------

' adicionar restante código para copiar restante informação de interesse

End If
End With
End If
Next cell

End With

End Sub


Obrigado

CJCM
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: Macro para passar valores de um livro para outro   Hoje à(s) 10:50 pm

Voltar ao Topo Ir em baixo
 
Macro para passar valores de um livro para outro
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Como passar mensagens de um forum para o outro
» Como passar um tema de phpbb3 para punbb?
» por um akaso tem como dividir a tela para 2 players so q se o player 1 passar pelo portal e ir para a proxima tela o player 2 nao ir a nao ser q ele passe pelo portal
» [BOLT] Navegador alternativo para passar os videos do youtube por Wi-Fi.
» TEM ALGUM APLICATIVO DO S8500 PARA SABER A LOCALIZAÇÃO DE OUTRO CELULAR?

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: