Jump to content

Cruzar dos bases tomando en cuenta su cercania en geolocalizacion


hiram

Recommended Posts

Hola a todos. Tengo un tema que no he podido encontrar en foros o google para solucionarlo. Inegi tiene en su plataforma bases de datos de muchos tipos de negocios como, oxxo escuelas, tiendas etc. En estas bases tiene sus coordenadas en geo localizacion de la siguiente forma: COORDY: 22.893915, COORDX: -109.931768. Por mi parte tengo muchos clientes registrados en mis bases y quiero bubscar clientes donde no tengo mi producto. El tema es que los nombres nos son los mismos y no tengo un dato en comun como para hacer un cruce normal. Lo unico es cruzar las bases tomando la lejania en metros de la geolocalizacion. Quisiera tener una formula que si mis clientes vs clientes de inegi estan <= 20 Mts que me los ponga como mismo cliente.
Les agrego un ejemplo en el anexo, espero puedan ayudarme.

Libro3.xlsx

Link to comment
Share on other sites

Hola

Hace 14 minutos , hiram dijo:

Quisiera tener una formula que si mis clientes vs clientes de inegi estan <= 20 Mts que me los ponga como mismo cliente.

Entiendo que la geolocalización en un mapa se ven los distintos lugares, ¿pero como vas obtener la distancia en metros o kilómetros? 

Una vez los tengas es muy sencillo, poder realizar el cruce

 

Saludos 

Link to comment
Share on other sites

Hola Gerson. Gracias por tomarte la molestia de leer mi caso. Si el tema es que hablo de una base de datos de 40 mil clientes en mi base de datos, contra 70 mil de inegi. Quiero buscar mis clientes en la base de inegi, identificarlos como mismos clientes por su cercania. Que mi algoritmo vaya a la base de inegi y me diga que cliente es el mas cercano a el cliente buscado. y que me indique la distancia.

Link to comment
Share on other sites

Si habia buscado pero tengo que calcular la distancia entre 1 cliente y 39 mil mas. Despues calcular cual es el de menos distancia..... A  lo que veo es un tema dificil. Muchas gracias

Link to comment
Share on other sites

  • Crear macros Excel

  • Posts

    • Muchas Gracias Janlui. Funciona perfecto, veras que he añadido a la macro una última línea que es la que crea el fichero final TXT en una ubicación concreta. Lo que no se es porque una vez generado el TXT la última parte la vuelve a entrecomillar (en la hoja 5 del fichero que adjunto veras un pantallazo del TXT que genera) Repito, muchas gracias por la ayuda Saludos       Ejemplo3.xlsm
    • Observé un pequeño error, espero ya esté bien. Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 7 To 11             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 12 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Disculpa que no te lo regrese en el archivo, pero mi nivel de membresía no me permite completar al 100% el apoyo que solicitan.
    • Copia la macro y el resultado lo pondrá en la Hoja2... Saludos Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 6 To 10             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 11 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Todas tus celdas deberán tener formato numérico.
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy