Fórum Excel Bácico, Avançado e Vba
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
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  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  

 

 Pedido de auxilio

Ir para baixo 
2 participantes
AutorMensagem
alen




Mensagens : 1
Data de inscrição : 19/10/2012

Pedido de auxilio Empty
MensagemAssunto: Pedido de auxilio   Pedido de auxilio EmptySex Out 19, 2012 7:52 pm

Boa tarde a todos os foristas.

Em primeiro lugar quero apresentar-me, sou Português e não sou informático, embora tenha muito gosto por aprender.

É a minha primeira vez coloco um pedido de auxilio, pois as minhas duvidas anteriores consegui resolve-las somente através da leitura.

Não consegui esclarecer esta duvidai, certamente por falta de habilidade minha na pesquisa do assunto. Por isso peço as minhas desculpas.

Nem sequer sei se estou na Seção correcta, caso não esteja, autorizo os Administradores a moverem o meu post para a seção correcta.

Tenho um ficheiro em Excel, com 3 folhas.

Duas folhas vão importar dados externos a dois ficheiros de texto que foram previamente criados.

A terceira folha reune uma seria de informações e efectua uma serie de tratamento de dados.

Mas estou a ter uma enorme dificuldade na construção desta uma folha, vou passar a explicar.

Imaginemos que na folha Excel 1 tenho um conjunto de dados relativamente às vendas de uma equipe comercial, e cada registo tem os seguintes campos (codigo de cliente, codigo do documento emitido e numero do documento);
Na folha de Excel 2 tenho as vendas efectuadas por outra equipe comercial e cada registo tem os mesmo campos. Cada linha de Excel diz respeito a uma venda.
Por exemplo:
Folha 1
1,s01,11
5,s10,10
30,s10,11
31,s01,12
32,s01,13
50,s10,12

Folha 2
2,e01,13
3,e01,14
10,e10,12
29,e10,13
30,e01,15
50,e10,14

Na folha de Excel eu pretendo que seja efectuada a reunião das duas folhas de Excel, ou seja interessa-me saber a quem foram efectuados documentos, o que quer dizer que deveria aparecer assim

1,s01
2,e01
3,e01
5,s10
10,e10
29,e10
30,s10,e01
31,s01
32,s01
50,s10,e10

Aqui os campo encontram-se separados pelas virgulas, e representam as colunas no Excel. Espero que esteja percetivel.

Ao fim ao cabo o que pretendo é efectuar a reunião dos dois conjunto de codigos de cliente de forma a que todos os clientes que se encontram nos dois conjuntos fiquem representados e perfeitamente ordenados e que não existam duplicações.

Obrigado pela vossa colaboração.
Ir para o topo Ir para baixo
McJota




Mensagens : 16
Data de inscrição : 26/10/2012
Idade : 48

Pedido de auxilio Empty
MensagemAssunto: Pedido de auxilio   Pedido de auxilio EmptySáb Out 27, 2012 2:36 am

Olá, boa noite!
Insira o seguinte código em um módulo:

Sub Agrupar()
Dim y As String
Dim j As String
Dim t As String
Sheets("Folha1").Activate
Range("A1").Select
Range(ActiveCell.End(xlDown), ActiveCell.End(xlToRight)).Select
Selection.Copy
Sheets("Folha3").Activate
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("c1").Select
Selection.EntireColumn = Delete
t = 1
Sheets("Folha2").Activate
Range("a1").Select
While ActiveCell <> ""
Sheets("Folha2").Activate
Range("A" & t).Select
y = ActiveCell.Value
j = ActiveCell.Offset(0, 1).Value
Sheets("Folha3").Activate
With Sheets("Folha3").Range("A:A")
Set c = .Find(y, LOOKAT:=xlWhole)
If Not c Is Nothing Then
c.Select
ActiveCell.Offset(0, 2).Value = j
Else
Range("a1").Select
Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True
ActiveCell.Value = y
ActiveCell.Offset(0, 1).Value = j
End If
End With
t = t + 1
Wend
Application.CutCopyMode = False
Columns("A:C").Select
ActiveWorkbook.Worksheets("Folha3").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Folha3").Sort.SortFields.Add Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Folha3").Sort
.SetRange Range("A:C")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1").Select
End Sub

Na Folha3, insira um botão e atribua essa macro a ele.

Abraço....
Ir para o topo Ir para baixo
 
Pedido de auxilio
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» Auxilio em Fórmula
» LOCALIZAR UM VALOR NUM INTERVALO PARA LANÇAR O VALOR CORRESPONDENTE EM OUTRA CÉLULA
» Pedido de ajuda - Função SE
» Pedido ajuda: Tabela para torneio futebol
» Bloquear e exibir mensagem quando a soma atingir o total do pedido

Permissões neste sub-fórumNão podes responder a tópicos
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: