Incluir datos a paritir de nombre columna

¿El presente mensaje es para saber como se puede desarrollas el sguiente problema?

Tengo unos informes en excel, y tengo los nombres de las columnas que necesito extraer, cada nombre de columna existen en todos los informes pero se encuentran en desorden.

Como puedo hacer en access cargar los archivos y extraerlos en una tabla nueva.

Adjunto archivos de ejemplo

Campos que necesito extraer

prescripcion/NoPrescripcion
prescripcion/FPrescripcion
prescripcion/HPrescripcion
prescripcion/TipoIDPaciente
prescripcion/NroIDPaciente
prescripcion/PNPaciente
prescripcion/SNPaciente
prescripcion/PAPaciente
prescripcion/SAPaciente
prescripcion/CodAmbAte
productosnutricionales/0/ProNutUtilizado
prescripcion/PNProfS
prescripcion/SNProfS
prescripcion/PAProfS
prescripcion/SAProfS
medicamentos/0/TipoPrest
medicamentos/0/DescMedPrinAct
procedimientos/0/CodCUPS
prescripcion/CodDxPpal
medicamentos/0/JustNoPBS
procedimientos/0/JustNoPBS
procedimientos/0/CanForm
medicamentos/0/CantTotalF
medicamentos/0/EstJM
procedimientos/0/EstJM

1 respuesta

Respuesta
1

Vamos a ver si consigo explicarme. Desde Access importa la columna donde tienes los Nombre esos que citas. En la tabla que obtengas, vamos a suponer que el campo donde guardas lo de Prescripcion... se llama Clientes(es que he usado una tabla que ya tenía). En esa tabla añádele los campos Izquierda, Centro y Derecha. Con ella haz un formulario y pon un botón de comando y en sus Propiedades-Eventos-Al hacer clic pon

If Len([Cliente]) - Len(Replace([Cliente], "/", "")) = 2 Then
Izquierda = Left([Cliente], InStr([Cliente], "/") - 1)
Dim resto
resto = Mid([Cliente], InStr([Cliente], "/") + 1)
Me.Texto12 = "" & resto & ""
Centro = Left("" & resto & "", InStr("" & resto & "", "/") - 1)
Derecha = Mid("" & resto & "", InStr("" & resto & "", "/") + 1)
Else
Izquierda = Left([Cliente], InStr([Cliente], "/") - 1)
Centro = Mid([Cliente], InStr([Cliente], "/") + 1)
End If

Me explico:

Primero cuenta cuántas barras inclinadas tiene el nombre.

Si tiene dos, entonces que Izquierda sea igual a la cadena de texto hasta la primera barra. Que el centro sea igual a la parte que queda hasta la segunda barra y Derecha, pues eso...

Si solo tiene una barra, que la Izquierda sea igual a lo de arriba y centro sea igual a lo que queda.

Por ejemplo, si el campo Cliente es José/López/Pérez te lo deja como

Izquierda=José

Centro=López

Derecha=Pérez"

en caso de que Cliente fuera Rosa/López te lo deja como

Izquierda=Rosa

Centro=López

No sé si me he explicado, pero te garantizo que funciona.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas