Conectate con nosotros

Macros

Función personalizada (Excel) Para descomponer nombres y apellidos – Código libre.

Publicado

el

En alguna oportunidad hemos tenido la necesidad de separar los apellidos y nombres ya sea de nuestros trabajadores, clientes o proveedores y nos hemos encontrado con la tediosa tarea de hacerlo uno por uno ante esto PERU CONTABLE pone a su disposición un pequeño aplicativo para ser utilizado libremente en las tareas diarias si así lo deseamos.

asdasd

Para esto haremos uno de las funciones personalizadas que nos permite crear Excel dichas funciones son las contenidas en el código VBA adjuntado; ahora bien, el orden en que puede estar los datos son los siguientes:

1.- Apellidos y Nombres.

2.- Nombres y Apellidos.

Las funciones a usar son las siguientes:

  • Apellidos y nombres (1)

Apellido paterno= “APEL_PAT(N7;1)”

Apellido Materno= “APEL_MAT(N7;1)”

Primer nombre= “PRIMER_NOMBRE(N7;1)”

Segundo nombre= “SEGUNDO_NOMBRE(N7;1)”

  • Nombres y Apellidos (2)

Apellido paterno= “APEL_PAT(N11;2)”

Apellido Materno= “APEL_MAT(N11;2)”

Primer nombre= “PRIMER_NOMBRE(N11;2)”

Segundo nombre= “SEGUNDO_NOMBRE(N11;2)”

Para mayores detalles veamos el siguiente video:

Descargar archivo excel: libro1

Código en VBA (macros) utilizado.
Public I As Integer

Public N°_DIGITOS As Byte

Public ORDEN As Byte

Public criterio As Byte

Public DIG As String

Public w As String

Public XC As String

Public NOMBRE_APELLIDO As String

Public ID As Double

Public SEGUIR As Boolean

‘VISITA NUESTRA TIENDA VIRTUAL

‘SISTEMA CONTABLE EXCEL – ACCES V.3.0:::: http://www.perucontable.com/tienda/producto/sistema-contable-excel/

‘APLICATIVO PLE 5.0:::::::::::::::::::::: http://www.perucontable.com/tienda/producto/macro-aplicativo-libros-electronicos/

‘GESTOR DE PLANILLAS ELECTRONICAS:::::::: http://www.perucontable.com/tienda/producto/gestor-planillas-beneficios-sociales/

‘GESTOR DE INVENTARIOS::::::::::::::::::: http://www.perucontable.com/tienda/producto/control-almacen-excel/

Public Function APEL_PAT(DATO As String, TIPO As Byte) As String

Call TEMP(DATO)

N°_DIGITOS = Len(Trim(DATO))

DIG = Mid(Trim(DATO), 1, 1)

w = 1

XC = “”

NOMBRE_APELLIDO = “”

ORDEN = ORDEN – 1

Select Case ORDEN

Case 3

If TIPO = 1 Then criterio = 1 Else criterio = 2

Case 4

If TIPO = 1 Then criterio = 1 Else criterio = 3

End Select

ORDEN = 1

For II = 1 To N°_DIGITOS + 1

If DIG = ” ” Or II = N°_DIGITOS + 1 Then

NOMBRE_APELLIDO = XC

If ORDEN = 1 And criterio = ORDEN Then

APEL_PAT = NOMBRE_APELLIDO

ElseIf ORDEN = 2 And criterio = ORDEN Then

APEL_PAT = NOMBRE_APELLIDO

ElseIf ORDEN = 3 And criterio = ORDEN Then

APEL_PAT = NOMBRE_APELLIDO

ElseIf ORDEN = 4 And criterio = ORDEN Then

APEL_PAT = NOMBRE_APELLIDO

ElseIf ORDEN = 5 And criterio = ORDEN Then

APEL_PAT = NOMBRE_APELLIDO

End If

NOMBRE_APELLIDO = “”

‘FIN = 5

XC = “”

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

ORDEN = ORDEN + 1

Else

XC = XC + DIG

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

End If

Next II

End Function

Public Function APEL_MAT(DATO As String, TIPO As Byte) As String

Call TEMP(DATO)

N°_DIGITOS = Len(Trim(DATO))

DIG = Mid(Trim(DATO), 1, 1)

w = 1

XC = “”

NOMBRE_APELLIDO = “”

ORDEN = ORDEN – 1

Select Case ORDEN

Case 3

If TIPO = 1 Then criterio = 2 Else criterio = 3

Case 4

If TIPO = 1 Then criterio = 2 Else criterio = 4

End Select

ORDEN = 1

For II = 1 To N°_DIGITOS + 1

If DIG = ” ” Or II = N°_DIGITOS + 1 Then

NOMBRE_APELLIDO = XC

If ORDEN = 1 And criterio = ORDEN Then

APEL_MAT = NOMBRE_APELLIDO

ElseIf ORDEN = 2 And criterio = ORDEN Then

APEL_MAT = NOMBRE_APELLIDO

ElseIf ORDEN = 3 And criterio = ORDEN Then

APEL_MAT = NOMBRE_APELLIDO

ElseIf ORDEN = 4 And criterio = ORDEN Then

APEL_MAT = NOMBRE_APELLIDO

ElseIf ORDEN = 5 And criterio = ORDEN Then

APEL_MAT = NOMBRE_APELLIDO

End If

NOMBRE_APELLIDO = “”

‘FIN = 5

XC = “”

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

ORDEN = ORDEN + 1

Else

XC = XC + DIG

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

End If

Next II

End Function

Public Function PRIMER_NOMBRE(DATO As String, TIPO As Byte) As String

Call TEMP(DATO)

N°_DIGITOS = Len(Trim(DATO))

DIG = Mid(Trim(DATO), 1, 1)

w = 1

XC = “”

NOMBRE_APELLIDO = “”

ORDEN = ORDEN – 1

Select Case ORDEN

Case 3

If TIPO = 1 Then criterio = 3 Else criterio = 1

Case 4

If TIPO = 1 Then criterio = 3 Else criterio = 1

End Select

ORDEN = 1

For II = 1 To N°_DIGITOS + 1

If DIG = ” ” Or II = N°_DIGITOS + 1 Then

NOMBRE_APELLIDO = XC

If ORDEN = 1 And criterio = ORDEN Then

PRIMER_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 2 And criterio = ORDEN Then

PRIMER_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 3 And criterio = ORDEN Then

PRIMER_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 4 And criterio = ORDEN Then

PRIMER_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 5 And criterio = ORDEN Then

PRIMER_NOMBRE = NOMBRE_APELLIDO

End If

NOMBRE_APELLIDO = “”

‘FIN = 5

XC = “”

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

ORDEN = ORDEN + 1

Else

XC = XC + DIG

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

End If

Next II

End Function

Public Function SEGUNDO_NOMBRE(DATO As String, TIPO As Byte) As String

Call TEMP(DATO)

N°_DIGITOS = Len(Trim(DATO))

DIG = Mid(Trim(DATO), 1, 1)

w = 1

XC = “”

NOMBRE_APELLIDO = “”

ORDEN = ORDEN – 1

Select Case ORDEN

Case 3

If TIPO = 1 Then criterio = 5 Else criterio = 5

Case 4

If TIPO = 1 Then criterio = 4 Else criterio = 2

End Select

ORDEN = 1

For II = 1 To N°_DIGITOS + 1

If DIG = ” ” Or II = N°_DIGITOS + 1 Then

NOMBRE_APELLIDO = XC

If ORDEN = 1 And criterio = ORDEN Then

SEGUNDO_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 2 And criterio = ORDEN Then

SEGUNDO_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 3 And criterio = ORDEN Then

SEGUNDO_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 4 And criterio = ORDEN Then

SEGUNDO_NOMBRE = NOMBRE_APELLIDO

ElseIf ORDEN = 5 And criterio = ORDEN Then

SEGUNDO_NOMBRE = NOMBRE_APELLIDO

End If

NOMBRE_APELLIDO = “”

‘FIN = 5

XC = “”

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

ORDEN = ORDEN + 1

Else

XC = XC + DIG

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

End If

Next II

End Function

Public Function TEMP(DATO As String)

N°_DIGITOS = Len(Trim(DATO))

DIG = Mid(Trim(DATO), 1, 1)

w = 1

XC = “”

NOMBRE_APELLIDO = “”

ORDEN = 1

For II = 1 To N°_DIGITOS + 1

If DIG = ” ” Or II = N°_DIGITOS + 1 Then

NOMBRE_APELLIDO = XC

NOMBRE_APELLIDO = “”

‘FIN = 5

XC = “”

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

ORDEN = ORDEN + 1

Else

XC = XC + DIG

w = w + 1

DIG = Mid(Trim(DATO), w, 1)

End If

Next II

End Function

Esperamos que sea de utilidad hasta el siguiente post un saludo contable.

—————————————————

TALLER PRACTICO: “PROGRAMA LIBROS ELECTRONICOS 5.0.0.4 – FULL CASOS PRÁCTICOS”
FECHA: Viernes 21 de octubre del 2016
HORARIO: 6:00 a 10:00 PM.
» Inversión: S/. 220.00
» Fans de Perucontable: S/ 210.00
» Pronto pago: S/ 180.00 (Antes del 15 de octubre)
Dirección: Calle Ricardo Angulo 269, San Isidro – Lima (A la espalda de la Clínica Ricardo Palma)
INFORMACIÓN: https://www.facebook.com/events/1663250313895695/

Comentarios
Sigue Leyendo
Clic para comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Current day month [email protected] *

Aplicativos

APLICATIVO LIBRE: REGISTRO DE VENTAS ELECTRÓNICO Y FÍSICO PARA MYPES

Publicado

el

Perucontable pone a disposición un aplicativo gratuito desarrollado en Excel con la ayuda de macros con la finalidad de que podamos generar nuestro registro de ventas tanto electrónico (PLE 5.0) como también el formato físico.

Para poder utilizarlo contamos con una nueva pestaña llamada “REGISTRO DE VENTAS ELECTRÓNICO” que contiene las opciones necesarias para poder operarlo.

El ingreso de las operaciones es a través de un formulario que contiene los campos necesarios para generar el registro de compras:

Además de manera opcional cuando registremos nuestros comprobantes podemos visualizar a misma información, pero en el formato electrónico a través del siguiente formulario:

Como se puede apreciar el aplicativo genera el archivo necesario para los libros electrónicos en su versión actual que además cuenta con un proceso de validación previa de tal forma que nos mostrara el detalle de algún error en el caso que lo existiera.

En cuanto a los reportes tenemos los siguientes:

  • Registro de ventas en formato físico:

  • Registro de ventas formato electrónico:

Para generar los archivos de texto que serán validados en el SLE – PLE utilizaremos la opción de “GENERAR TXT” en la que nos mostrará el siguiente mensaje el cual contiene la ruta donde se encuentra los archivos generados:

Como podemos notar falta el archivo de texto relacionado al registro de compras electrónico el mismo que ya ha sido entregado de forma gratuita y que puede ser descargado de la siguiente dirección:

https://www.perucontable.com/excelcontable/aplicativo-registro-de-compras-electronico-gratuito-peru-contable/

Finalmente se adjunta el video tutorial de cómo sería la utilización practica del presente aplicativo.

DESCARGA AQUÍ EL APLICATIVO REG_VENTAS_PLE (15/06/17)

 

Saludos cordiales.

_________________________________
Compre en nuestra Tienda Contable Virtual

SISTEMA CONTABLE EN EXCEL: S/ 350 + IGV

El presente sistema “Sistema Contable en Excel – Access” está desarrollado en Macros con conexión a Access, diseñado para llevar los principales libros y registros que conforman una contabilidad, generar libros electrónicos SLE – PLE 5.0.0.5DAOT y además genera los comprobantes electrónicos a través del sistema de emisión electrónica facturador Sunat – (SEE – SFS).

RPM: #945035566/RPC: 982700612/ WHATSAPP: 985958797

www.perucontable.com/tienda/producto/sistema-contable-excel/

Comentarios
Sigue leyendo

Red de blogs - Excel Contable | Perucontable © 2003 - 2017