Notifications
Clear all

Loop? - Atribuir registros a vendedores por área DDD

10 Posts
4 Usuários
0 Reactions
1,228 Visualizações
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Pessoal,

Comecei a criar um loop, mas não consegui deixá-lo 100% automatizado.

O que tenho:

. Base com registros com campo de DDD
. Base com vendedores que atendem certas áreas DDD

O que preciso:

. Atribuir aos registros os vendedores de acordo com a área DDD que eles atendem

Exemplo:

. Tenho 100 registros do DDD 11 e tenho 8 vendedores que atendem a área DDD 11. Preciso que esse loop atribua de forma sequencial esses registros aos assessores (vou classificar a lista de vendedores e preciso que o primeiro registro seja do vendedor 1 da área 11, o segundo registro seja do vendedor 2 da área 11 e assim sucessivamente até a lista acabar, no caso 8 registros. Depois o loop precisa começar a distribuir os registros novamente para a lista de vendedores da área 11 até finalizar os registros com o DDD 11).

Envio arquivo com o que comecei a fazer, mas não consegui terminar.

Abs,

Ricardo Soler

 
Postado : 30/05/2016 2:30 pm
(@mprudencio)
Posts: 0
New Member
 

Qual o resultado esperado?

 
Postado : 30/05/2016 3:23 pm
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Ao clicar no botão que criei no arquivo anexo, os vendedores foram atribuídos aos registros/leads (um loop bem "meia boca" que criei). Preciso fazer isso para todos os registros, considerando os vendedores que atendem a área.

 
Postado : 30/05/2016 3:34 pm
(@mprudencio)
Posts: 0
New Member
 

Eu entendi o que vc quer. Quero saber o resultado esperado, preenche a planilha manualmente com o resultado e posta o arquivo novamente

 
Postado : 30/05/2016 4:02 pm
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Opa. Foi mal. Segue agora com o resultado esperado. Obrigado pela ajuda.

Abs.

 
Postado : 30/05/2016 4:15 pm
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Estranho. Se tem senha, nem sei como eu fiz, porque não sei fazer. Bom, envio o arquivo novamente agora com outra extensão, para ver se dá certo.

Confesso que não entendi o seu arquivo "Listview-v4 - colour". :(

Vou dar mais detalhes (depois de um dia refletindo para ajudar):

- Tenho uma base com registros e esses registros possuem áreas (DDD) diferentes. São mais de 60 áreas que temos no Brasil.
- Tenho uma outra base com os vendedores/assessores que atendem à essas áreas. São mais de 120 assessores que estão distribuídos, não necessariamente de forma igual, nas áreas (DDD). Então, exemplo, existem 30 assessores que atendem área 11, 12 assessores que atendem a área 12, 1 assessor para a área 13 e assim sucessivamente.
- Vou classificar as listas com os assessores de acordo com um critério, que vou definir, então os 30 assessores da área 11 estão "sorteados" em uma ordem estabelecida. E essa lógica será feita para todas as áreas.
- A base de registros precisa ser atribuída de acordo com a área do registro na ordem que a lista dos assessores daquela área estiver "sorteada".

Ex.: Possuo 200 registros da área 11 com 30 assessores da área 11. O registro 1 vai para o assessor 1, o registro 2 vai para o assessor 2... o registro 30 vai para o assessor 30, o registro 31 vai para o assessor 1 de novo (o loop precisa recomeçar já que existem mais leads que assessores)...

Possuo 12 registros para a área 12. Cada assessor recebe um registro, já que existem registros para todos os assessores.

Possuo 30 registros para a área 13. O único assessor receberá todos os registros dessa área.

Esse loop precisa acontecer para todos os registros em todas as áreas do Brasil considerando os assessores que atendem às áreas.

Abs,

Ricardo Soler

Abs e obrigado pela ajuda.

 
Postado : 31/05/2016 8:33 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

ricardo, me desculpe, mas eu havia enviado o arquivo no tópico errado, já movi para o tópico certo.

[]s

 
Postado : 31/05/2016 2:57 pm
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Imagine Mauro. Tamu juntu! Está ajudando pacas!!!

 
Postado : 31/05/2016 3:05 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

Ricardo, veja se entendi corretamente.
Rode o código a partir da planilha "Registros".
Há divergência entre o seu resultado esperado e o resultado do código quanto à distribuição dos nomes dos vendedores da Área 16 :?

Sub DistribuiVendedores()
 Dim k As Long, m As Long, x As Long, v As Long, ws As Worksheet
 Range("D2:D" & Cells(Rows.Count, 4).End(3).Row) = ""
 Set ws = Sheets("Vendedores")
 For k = 2 To Cells(Rows.Count, 2).End(3).Row
  m = ws.Columns(2).Find(Cells(k, 2)).Row
  x = Application.CountIf(ws.Columns(2), Cells(k, 2))
   For v = m To x + m - 1
    Cells(k, 4) = ws.Cells(v, 1)
     If Cells(k + 1, 2) <> Cells(k, 2) Then Exit For
     If Cells(k + 1, 2) = Cells(k, 2) And v < x + m - 1 Then
      k = k + 1
     End If
   Next v
 Next k
End Sub
 
Postado : 31/05/2016 6:20 pm
(@ricsolbra)
Posts: 0
New Member
Topic starter
 

Opa... vou testar e aviso! Fiquei sem responder esses últimos dias porque estava enrolado. Abs e obrigado pela ajuda.

 
Postado : 06/06/2016 11:02 am