Hola a todos! Espero que estéis bien.
Hace casi un año publiqué un post sobre ENVIAR DATOS DE EXCEL A UNA LISTA DE SHAREPOINT CON VBA, en ese post explicaba como, una vez creada nuestra lista de SharePoint podíamos automatizar el grabado de datos entre Excel y SharePoint utilizando ADO (con VBA).
Pues bien, hoy quiero completar este post, modificando ese código para ACTUALIZAR los datos de otros campos que tengamos que añadir.
Vamos a poner un ejemplo:
Imaginada que hemos tenemos una lista de datos y hemos cargado los 3 primeros campos, el EMPLE_ID, el NOMBRE COMPLETO y la SECCIÓN y el resto de datos no los tenemos así que hemos creado los campos pero la información está vacía.
Pero resulta que hemos conseguido la información y en Excel hemos creado una tabla con todos los datos:
Pues bien, tenemos varias opciones, o bien borramos la lista y cargamos de nuevo (pero esto no es nada recomendable) o lo actualizamos. Aunque se puede actualizar de dos formas, yo recomiendo esta segunda forma usando el ID en la sentencia SQL y con el WHERE.
De forma que vamos a modificar ligeramente el código que os dejé en el post anterior en la parte en la que enviamos los datos a la lista de SharePoint y en la que solo vamos a incluir los campos que vamos a actualizar:
Do Until Dataread.EOF
mySQL = "UPDATE [MiLista] SET " & _
"[NACIMIENTO] = '" & Dataread.Fields("NACIMIENTO").Value & "', " & _
"[GÉNERO] = '" & Dataread.Fields("GÉNERO").Value & "', " & _
"[2 º IDIOMA] = '" & Dataread.Fields("2 º IDIOMA").Value & "', " & _
"[ESTUDIOS] = '" & Dataread.Fields("ESTUDIOS").Value & "' " & _
"WHERE [EMPLE_ID] = " & Dataread.Fields("EMPLE_ID").Value & ";"
cnt.Execute mySQL
Dataread.MoveNext
Loop
Por ello, es fundamental el Update de los campos sobre la lista y el cuando el ID sea coincidente. El resultado es este:
Y esto es todo, espero que sea de utilidad!!
¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.
¡¡Muchas gracias!!
Mediante la suscripción al blog, la realización comentarios o el uso del formulario de contacto estás dando tu consentimiento expreso al tratamiento de los datos personales proporcionados según lo dispuesto en la ley vigente (LOPD). Tienes más información al respecto en esta página del blog: Política de Privacidad y Cookies