domingo, 27 de mayo de 2012

Cómo importar Datos desde la Web a Excel

¿Te haz preguntado si es posible importar datos directamente desde la web a Excel?
¿Te da lata escribir dato por dato en una tabla?
¡A quien no!
Si te interesa hacer esto de la forma más rápida y sencilla pon atención:
1)      Abre un Documento de Microsoft Excel
2)      Haz click en Datos

3)      Selecciona la pestaña desde la Web




 4)      Cuando te aparezca la ventana de  nueva consulta web:


1.      En la barra Dirección pon el nombre de la página en donde están los datos que necesitas. Ojo que necesitas estar conectado a Internet o sino no te funcionara.
 
2.      Haz click en “Ir”

 
3.      Cuando te aparezca la pagina que estas buscando haz click sobre el cuadradito en la esquina superior izquierda de lo que necesitas

 
4.      Al hacer click en aquel cuadradito se pondrá un ticket en un cuadrado verde, indicando que lo seleccionaste. Por ultimo haz click en Importar


Y….ohh!!! Tienes los datos en tu Excel en un abrir y cerrar de ojos.



5)      Si necesitas cambiar el formato de las celdas haz click izquierdo en formato de celda y elige la que necesitas.

No ves, es muy fácil, Ahora te toca a ti!=)

Si no te quedo claro haz click en este video que puede servir de ayuda:
http://www.youtube.com/watch?v=yIgl2bRi2Q0
Leer más...

miércoles, 23 de mayo de 2012

Competencia Mundial MS Office


Competencia Mundial de Microsoft Office 2012

Se invita a participar en la Campeonato Mundial de Office 2012 (MS Access, MS Excel, MS Word), comenzando por unas clasificatorias regionales, luego clasificatorias nacionales y finalmente la última etapa que se realizará en Las Vegas.
Según lo informado por la entidad que organiza este evento las inscripciones se encuentran abiertas hasta el 31 de Mayo. Para mayor información visita http://www.certificacion.cl/competencia/ 

Para consultas más especificas contactar a Karen Brown kbrown@seminarium.com encargada de la compencia en la Región Metropolitana.
Leer más...

miércoles, 9 de mayo de 2012

Expresión Select en SQL


SQL es el lenguaje de programación utilizado en la Base de Datos relacional, como Oracle, Informix y también Access, este permite manejar grandes conjuntos de datos  y la relación existente entre ellos.

SQL es un lenguaje el cual se compone de una variada cantidad de sentencias, que permite manejar los datos de diferentes formas, estos pueden ser insertados (insert), borrados (delete), modificados (update) o simplemente “vistos” (select), como en una planilla Excel.

 El SQL, también tiene definida una gran variedad de Funciones, como ser count(*), contar una serie de datos, MIN, saca el mínimo de una serie datos, MAX, el máximo de un dato, etc.
Usando apropiadamente estas instrucciones y las funciones predefinidas el SQL se convierte en una poderosa herramienta, al manipular los datos dentro de una Base de Datos.

Analizaremos una de las instrucciones básicas del SQL como es la instrucción Select
Esta instrucción se compone en su forma mas básica de tres grandes secciones:
  • SELECT
  • FROM
  • WHERE
El contenido de cada una de estas seria:
  • SELECT campo1, campo2, campo3,…. campon
  • FROM tabla1, tabla2, .. tablan
  • WHERE (aquí se expresa la condición de unión de las diferentes tablas).
Esto nos permite obtener los “campos” que deseamos al efectuar una consulta  a la Base de Datos.

Un ejemplo del uso de esta instrucción:
Si tenemos dos tablas Tabla1 y Tabla2 con los siguientes campos :
Tabla 1:  rut, nombre_alumno
Tabla 2:  rut, cursos_cursados

Si quisieramos saber los cursos cursados y el nombre de un alumno, podemos construir la siguiente sentencia:

Select  tabla1.nombre_alumno, tabla2.curso_cursados
From tabla1,
          Tabla2
Where tabla1.rut = tabla2.rut;
Esto nos entregaría algo como
Pepito Perez , Algebra 1
Pepito Perez , Calculo 1
Juna Moya, Algebra II
Pablo Izquierdo Algebra II

La sintaxis de esta instrucción es:
SELECT [predicado] { * | tabla.* | [tabla.]campo1 [AS alias1] [, [tabla.]campo2 [ASalias2] [, ...]]}
FROM expresióndetabla [, ...] [IN basededatosexterna]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]
La instrucción SELECT consta de las siguientes partes:
PARTE
DESCRIPCIÓN
predicado
Uno de los siguientes predicados: ALL, DISTINCT, DISTINCTROW o TOP. Utilice el predicado para restringir el número de registros devueltos. Si no se especifica ninguno, el predeterminado es ALL.
*
Especifica que se han seleccionado todos los campos de la tabla o tablas especificadas.
tabla
Nombre de la tabla que contiene los campos de los cuales se seleccionan los registros.
campo1campo2
Nombres de los campos que contienen los datos que desea recuperar. Si incluye más de un campo, se recuperan en el orden en que se han enumerado.
alias1alias2
Nombres que se utilizan como encabezados de columna en tablaen vez de los nombres de columna originales.
expresióndetabla
Nombre de la tabla o tablas que contienen los datos que se desean recuperar.
Basededatosexterna
Nombre de la base de datos que contiene las tablas de expresión de tabla si éstas no están en la base de datos actual.(1)



Cabe destacar que el uso de los paréntesis cuadrados es opcional, solo es necesario en el caso de que una de las partes tenga espacios o signos de puntuación entre medio, en caso de no tener ninguno de estos, los paréntesis cuadrados son optativos.

La instrucción SELECT a la vez nos permite realizar otras operaciones, tales como:

            -   Contar: esta calcula el numero de registros devueltos por una consulta, en el caso de       haber registros nulos es preferible poner  (*) lo que incluye los registro nulos, la sintaxis es la siguiente:
SELECT
Count(*) AS Total
FROM
….

Sin embargo para contar datos específicos de una tabla se puede escribir de la siguiente forma:
SELECT
Count(FechaEnvio) AS Total
FROM
….

Esta función permite contar incluso texto.

-     Máximo y Mínimo: devuelve el valor máximo o mínimo de un determinado conjunto,        incluir el nombre de una tabla o función , se expresa de la forma
SELECT
min(expr) AS Elmin
FROM
De forma análoga el máximo se expresa:
SELECT
max(expr) AS ElMax
FROM
-          Promedio: se expresa de la forma Avg, permite calcular el promedio o media aritmética utilizando los datos de un campo dado , esta función no incluye campos nulos en el calculo
SELECT
Avg(expr) AS Promedio
FROM

-          Suma: otra de las funciones que se pueden realizar en SQL es la suma de valores contenidos en un campo especifico:
SELECT
Sum(expr) AS Total
FROM
-          Varianza y desviación estándar. también en SQL se pueden calcular variables estadísticas como la varianza  la desviación estándar, se escriben respectivamente:
SELECT
Var(expr) AS Varianza
FROM
….

SELECT
StDev(expr) AS Desviacion
FROM
….
Estas son solo algunas de las posibilidades que ofrece el SQL y específicamente la función SELECT nos ofrece.





Leer más...

Eliminación de duplicados – Access


Eliminación de duplicados –  Access

Primero aclaremos algunos conceptos:
Datos duplicados: existen dos tipos de datos duplicados, los necesarios y los innecesarios para nuestra base de datos. Estos últimos son los que nos interesa eliminar porque están utilizando espacio y puede perjudicar al momento de tomar decisiones. La duplicación de una entidad puede ser parcial o total. Por ejemplo, una entidad puede ser CLIENTE, el cual tiene atributos como Rut, nombre, apellido, dirección, teléfono, entre otros. La duplicación puede ser parcial cuando hay dos o más registros que comparten los mismos datos, pero no en todos los atributos. Como en el siguiente caso, en donde hay dos registros para Wilman Kala.



Los datos duplicados lo podemos encontrar: en una misma tabla, pueden existir dos tablas con distinto nombre pero con mismos datos o bases de datos.
Antes de eliminar los datos duplicados, debemos saber cuáles son, identificar el tipo y si es necesario eliminarlos de la base de datos.

Para saber primero cuales son los datos duplicados que hay en una tabla, lo que tienes que hacer es lo siguiente:






En el caso que desees hacer una búsqueda de un dato parcial, debes hacer la consulta a través de SQL, en donde puedes modificar la consulta y adaptarla según a tú necesidad. Al hacer la consulta te tienes que percatar que contenga el registro que lo hace único, como por ejemplo puede ser en el caso del Cliente su Rut.

Con los datos duplicados puedes aplicar distintas funciones, tales como: sumar, contar, obtener el promedio, ocultar los datos, agrupar los datos duplicados y señalar la cantidad de duplicados, pero solo ves un registro, eliminar duplicados.

Una vez que tienes vistos los datos duplicados, Access entrega la opción de utilizar consultas de eliminación, para eliminar los datos que no son necesarios y que ocupan un espacio valioso en la base de datos.

Se recomienda que cada vez que realices alguna eliminación, crees una copia de seguridad de tu archivo, esto es con el propósito, por ejemplo, de si cometes algún error al momento de la eliminación.

De seguro tu base de datos tendrá más de una tabla. Es muy importante que antes que empieces con la eliminación de los datos duplicados, sepas si los datos que están en esa tabla tienen alguna relación con datos de otra tabla y cómo es esta relación (1àn o de nà1). Esto último lo debes considerar porque dependiendo de cómo sea la relación te indica la acción que debes realizar.



Por ejemplo: si deseas eliminar datos de la tabla PRODUCTOS, solo tienes que hacer una consulta normal, como vimos anteriormente. Pero si deseas eliminar algún dato de la tabla PROVEEDORES deberás hacer una consulta especial.

Ahora que ya tienes claro los datos y sus relaciones podemos diseñar nuestra consulta que eliminará los datos duplicados innecesarios para nuestra base de datos.

Para esto debes ir a Diseño de consulta, tal como se ve en la imagen.

 








En la parte inferior (marcado con un círculo verde) debes elegir de qué atributos deseas eliminar datos y deberás poner los criterios que deben cumplir estos datos. Una vez que ya tienes definidos los criterios debes desactivar la casilla Mostrar.

Recuerda que estás trabajando en la hoja de la consulta.

Cuando tengas lista tu consulta debes Ejecutar (recuadro Resultado). Verifica que los datos son los correctos. Cuando ya estés listo, vuelve a la vista de diseño de la consulta y Elimina. A continuación debes nuevamente verificar que son los datos que deseas eliminar. Presiona Ejecutar y confirma tu operación.

Ahora veamos el caso que dos tablas tengan los mismos datos.

Al igual que lo anterior, Access permite que puedas dejar un solo registro, modificar los registros duplicados en ambas tablas y eliminar registros y dejar una tabla con todos los datos necesarios.
Debes tener presente las relaciones que existen entre las tablas (las que están duplicadas y las otras que conforman tu base de datos).

Si vas a eliminar una tabla (tabla1), asegúrate que la que quedará (tabla2) tenga las relaciones que tenía la tabla 1 con las otras tablas de la base de datos y  que la llave sea la misma para ambas.

Al igual que el caso anterior, tenemos que hacer una consulta de eliminación en donde busquemos los registros duplicados para luego eliminarlos.

Luego de esto tenemos que hacer una consulta de datos anexados para los datos de la tabla que deseamos eliminar a la otra tabla para deshacernos de la que no necesitamos.
Seguiremos los pasos del caso anterior:





Esta vez mostraremos las dos tablas que tienen registros duplicados y vamos a relacionar a través de sus nombres. Por ejemplo relacionamos Nombre que es de la tabla COMPRADORES, con Nombre Cliente que es de la tabla CLIENTES.

Debemos indicar que se dejen los registros únicos. Para eso vamos a propiedades (con el botón derecho) y ponemos un Sí en Registros Únicos.


Luego, volvemos a la vista de diseño de la consulta y Eliminamos.


A continuación procedemos a rellenar la hoja que está en la parte inferior. Lo haremos de la siguiente manera:
Arrastraremos todos los campos de la tabla CLIENTE tal como aparece en la siguiente imagen



En el campo que dice eliminar debes poner Desde y en el campo criterios debes poner el nombre de la tabla que deseas conservar y el atributo de la tabla que deseas eliminar.

Una vez verificados los datos que deseas eliminar, tienes que  Ejecutar.




Lo que puedes hacer ahora, en el caso que hayan quedado registros en la tabla CLIENTES (que no estaban en la tabla COMPRADORES), los puedes transportar a la tabla COMPRADORES, de esta forma solo tendrás una tabla con toda la información que tenías en dos tablas.

Esto se hace a través de una consulta. Debes ir a  Diseño de Consulta agregar la tabla CLIENTE y busca la opción Anexar.



Ahora debes seguir los pasos que hicimos en la eliminación de datos. Completar los datos en la hoja que está en la parte inferior. Con la diferencia que ahora debes anexar los datos que están en la tabla CLIENTES sin especificar criterios.



Ya que tienes todos tus datos en una tabla (COMPRADORES), podrás eliminar la tabla CLIENTE.
Leer más...

miércoles, 2 de mayo de 2012

Listas Desplegables Anidadas en Access

Listas Desplegables Anidadas en Access

Sin duda que Access es una herramienta muy util para el manejo de bases de datos, dentro del cual podemos realizar diferentes  cosas que ayudan a que la base pueda ser más amigable con el usuario. Dentro de ellas encontramos los Formularios, que permiten mejorar el aspecto que presentan las tablas dentro de la base.
Dentro de los formularios, se pueden presentar diferentes campos, unos en donde el usuario ingrese los datos, otros donde tenga que activar alguna opción y también se presentan listas desplegables con una serie de opciones. Esta última opción es muy útil ya que permite mostrar una lista de opciones donde la persona sólo debe seleccionar la adecuada, de esa forma se evita que existan muchos datos que significan lo mismo, pero que por estar en diferentes formatos, se almacenan muchas veces.

Pero además de estas listas desplegables normales, se pueden crear listas desplegables anidadas o dependientes de otras listas. Un ejemplo de esto puede ser el caso de provincias, ya que podemos crear una lista desplegable en donde se muestren todas las provincias de una determinada región, y en otra lista me muestre las comunas pertenecientes a esas provincias. El punto es que yo quiero que me muestre sólo las comunas asociadas a la provincia que yo seleccioné y no todas las comunas de todas las provincias. Para poder hacer esto utilizamos consultas en access.

 Continuando con el ejemplo anterior, tenemos dentro del formulario una lista desplegable con la Provincia y otra lista desplegable con la comuna, tal como se muestra en la siguiente imagen:

Al hacer estas listas uno tiene la opción de poder elegir la provincia que desea, pero el problema es que en la segunda lista se muestran todas las comunas correspondientes a todas las provincias, no se hace un filtro en donde sólo me muestre las comunas correspondientes a la provincia seleccionada. Para que esto suceda uno tiene que posarse sobre la lista que depende de la otra, que en este caso es la de comunas, se hace doble clic y aparece un cuadro de opciones como se muestra en el cuadro rojo de la siguiente imagen:


Después de eso, nos posicionamos sobre la celda que dice Origen de la fila y volvemos a hacer doble clic donde se despliega una nueva ventana que nos permite poder hacer la consulta.

Ya en esta etapa, comenzamos a hacer la consulta que permite que la lista de comunas dependa de la lista de provincias. Para poder hacer hacer esto, nos vamos a la barra de herramientas a una pestaña que dice Generador, después se selecciona la opción de Formularios y se ve la opción provincias, que permite poder crear esta relación, ya que se va a convertir en el criterio de la columna Provincias, dentro de la consulta. Esto se puede ver a continuación:

Pero esto no soluciona del todo el problema ya que además debemos hacer algunos cambios en la configuración de la lista de provincias, en donde tenemos que ir a ver el generador de código para poder actualizar la tabla de comunas, y para hacer esto se pone comuna.requering. Al hacer esto ya queda solucionado el problema. Todo este proceso se puede ver en el siguiente video:

Existe otra forma de poder hacer esto, por medio puramente de consultas en las tablas correspondientes utilizando diversas fórmulas dentro de las cuales encontramos:
SELECT * FROM: me permite seleccionar algo de una determinada tabla
SELECT: me permite escoger algo de la tabla en la que estoy trabajando.
ORDER BY: me permite ordenar de acuerdo a un criterio.
WHERE: me permite establecer criterios de comparación en donde puedo igualar cosas o ver las diferencias.
Utilizando estos criterio podemos crear fórmulas que permiten poder crear la dependencia entre las listas desplegables, bajo un proceso detallado en el cual se van llamando criterios, comparándolos, etc.

Sin duda esto facilita aún más el uso de la base de datos, específicamente de los formularios, ya que permite filtrar criterios de la segunda lista, al momento de hacer una selección en la primera lista.
Leer más...

Uso de función Unión e Intersección y sus Ventajas

Antes de comenzar con este tema, creo necesaria una pequeña introducción a SQL para que la lectura de esta publicación sea un tanto más amigable.
SQL es la sigla para “Lenguaje de Consulta Estructurado” (Structured Query Language). Este lenguage nos permite realizar consultas de distintas complejidades en una base de datos.
La estructura básica de una consulta realizada en Access es la siguiente.


 Tenemos estas 3 tablas a modo de ejemplo, E (Empleado), S (Sucursal) y C (Cargo). De estas tablas queremos saber el RUT, Nombre, Apellido (tabla Empleado), junto a su Nombre_Cargo (tabla Cargo y cargo especificado) de la Dirección de Sucursal (tabla Sucursal) “Huerfanos #78”. Al general la consulta con el asistente, también podemos ver el código SQL asociado (toda consulta realizada tiene un código SQL generado). El de la que queremos hacer en esta ocasión lo podemos ver a continuación:


SELECT E.RUT, E.Nombre, E.Apellido, S.Dirección, C.Nombre_Cargo
FROM SUCURSAL AS S, EMPLEADO AS E, CARGO AS C
WHERE (((S.Dirección)="Huerfanos #78") AND ((C.Nombre_Cargo)="Analista") AND ((S.Id_Sucursal)=[E].[Id_Sucursal]) AND ((E.Id_Cargo)=[C].[Id_Cargo]));

 



Vemos que la primera línea, SELECT, nos muestra TABLA.ATRIBUTO (nombre de la tabla junto al atributo que queremos rescatar de esta). En la línea FROM en este caso se hace referencia a las tablas a utilizar (es común usar abreviaturas como S para llamar a la tabla SUCURSAL  con la finalidad de minizar el código a utilizar, lo que hace esto es renombrar la tabla para una mayor facilidad en el manejo de los datos). En la última línea, WHERE, se dan las especificaciones que necesitamos para que nuestra consulta sea lo más certera posible (en este caso, se especifica que la dirección es Huerfanos #78 y el nombre del cargo es Analista. También se define como se relacionan las tablas entre si (atributo llave, por ejemplo con S.Id_Sucursal)=[E].[Id_Sucursal] decimos que el atributo Id_Sucursal de la tabla S en donde es llave, es el mismo Id_Sucursal de la tabla E y es la forma en que ambas tablas se relacionan).
Esta consulta nos arroja el siguiente resultado en Access:


UNION

Lo que hace la función unión es otorgar una forma sencilla para poder trabajar con dos consultas y relacionarlas entre si.
Su estructura SQL básica sería más menos como lo siguiente:


SELECT  T1.AtributoA, T1.AtributoB, T2.AtributoC
FROM   Tabla1 AS T1, Tabla2 AS T2
UNION
SELECT  T3.AtributoA, T4.AtributoB, T3.AtributoC
FROM   Tabla3 AS T3, Tabla4 AS T4
 

En esto podemos ver claramente como se UNEN 2 consultas que son independientes entre si.

Según los manuales de Microsoft, “Las consultas de selección que se combinan en una consulta de unión deben tener el mismo número de campos de resultados, en el mismo orden y con tipos de datos idénticos o compatibles. Cuando se ejecuta una consulta de unión, los datos de cada conjunto de campos correspondientes se combinan en un solo campo de resultados, de modo que los resultados de la consulta tienen el mismo número de campos que cada una de las instrucciones SELECT”.

Ejemplo: Sean las siguientes consultas SQL

Consulta 1: 
SELECT [Nombre de compañía], [Ciudad]

FROM [Proveedores]
WHERE País="Argentina"

Consulta 2:
SELECT [Nombre de compañía], [Ciudad]
FROM [Clientes]
WHERE País="Argentina";

Al usar la función UNION, deberíamos obtener los nombres de compañía y ciudades que se encuentran tanto en la tabla Proveedores como en la tabla Clientes y que son de Argentina.


INTERSECCION

Esta función, a diferencia de la anterior, funciona como un Y en lógica (la función UNION funciona como un O lógico). Para clarificar su uso veamos el siguiente ejemplo.
Supongamos que poseemos las siguientes tablas:

Tienda
Ventas
Fecha
Local 1
$15.000.000
21-04-2012
Local 2
$25.400.000
12-02-2012
Local 3
$30.000.000
15-03-2012
Local 4
$6.000.000
1-03-2012
 Tabla de Información de tiendas



Fecha
Ventas
17-03-2012
$5.350.000
15-03-2012
$2.340.000
27-04-2012
$12.750.000
Tabla de Ventas por Internet


Lo que haremos en este ejercicio será ver en que fecha se realizaron ventas tanto en el local físico como en internet, para lo cual debemos intersectar ambas tablas. Como aprendimos en conjuntos, al realizar una intersección, lo que rescatamos son los elementos en común en ambos conjuntos, lo que en este caso sería la fecha que se encuentre en ambas tablas. El resultado de dicha intersección es el siguiente:


Fecha
15-03-2012


El código SQL asociado a esta consulta es el siguiente:



SELECT Fecha
FROM Info_Tienda
INTERSECT
SELECT Fecha
FROM Venta_Internet
 




                                                                                                                                                






Leer más...