Seleccionar impresora al imprimir informe en Access

Seleccionar impresora al imprimir informe en Access

Por defecto, para imprimir un informe en Access desde un formulario, se usa la impresora predeterminada, sin posibilidad de elegirla antes de que se imprima dicho informe. Esto se consigue con la instrucción: DoCmd.OpenReport “NombreDelInforme”, acNormal Después de buscar una solución en muchos foros, hemos encontrado en www.trucoweb.com, un método sencillo, muy sencillo para elegir la impresora por la que queremos imprimir nuestro informe en access. Solo hay que poner las siguientes instrucciones: DoCmd.OpenReport “NombreDelInforme”, acPreview DoCmd.RunCommand acCmdPrint DoCmd.Close acReport, “NombreDelInforme” Con esto lo que hacemos es abrir el informe, mostrar el dialogo para elegir la impresora por la que imprimir y, posteriormente, cerrar el informe. Método sencillo, funcional y comprobado en access...
Desproteger Excel

Desproteger Excel

Os mostramos un truco sencillo para desproteger hojas de Excel cuyo contenido está protegido para que no podamos ver algunas cosas. Se trata de, una vez abierto el excel, escribir un pequeño programa en VB: Sub breakit() Dim i As Integer, j As Integer, k As Integer Dim l As Integer, m As Integer, n As Integer On Error Resume Next For i = 65 To 66 For j = 65 To 66 For k = 65 To 66 For l = 65 To 66 For m = 65 To 66 For i1 = 65 To 66 For i2 = 65 To 66 For i3 = 65 To 66 For i4 = 65 To 66 For i5 = 65 To 66 For i6 = 65 To 66 For n = 32 To 126   ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & _     Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _     Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)   If ActiveSheet.ProtectContents = False Then     MsgBox "La contraseña es: " & Chr(i) & Chr(j) & _       Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _       Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)     Exit Sub   End If Next Next Next Next Next Next Next Next Next Next Next Next End Sub Una vez escrito el código, pulsar F5 para ejecturarlo y esperar….. un poco. Al final del proceso saldrá una ventana emergente con la clave. Fuente: Taringa (hay muchas entradas en Taringa que explican lo mismo así que no sabemos cual es la...
Ordenar un Datagrid haciendo click en la cabecera

Ordenar un Datagrid haciendo click en la cabecera

En Visual Basic 6, podemos ordenar rápidamente un Datagrid haciendo click en la cabecera con solo incluir esta función: Public Sub OrdenarDataGrid( ByVal ColIndex As Integer, RS As ADODB.Recordset, Datagrid As Datagrid) Dim strColName As String Static bSortAsc As Boolean Static strPrevCol As String strColName = "[" & Datagrid.Columns(ColIndex).DataField & "]" If strColName = strPrevCol Then If bSortAsc Then RS.Sort = strColName & " DESC" bSortAsc = False Else RS.Sort = strColName bSortAsc = True End If Else RS.Sort = strColName bSortAsc = True End If strPrevCol = strColName Exit Sub Posteriormente desde el método HeadClick del DataGrid, podemos llamar a esta función de esta forma: Private Sub DataGrid_HeadClick(ByVal ColIndex As Integer) ' Le envia el ColIndex (columna donde hacemos click), ' el recordset enlazado al Datagrid y el mismo Datagrid Call OrdenarDataGrid(ColIndex, RSenlazado, DataGrid) End Sub Esta función puede ser llamada desde cualquier DataGrid de nuestro proyecto con sólo añadirla a un módulo. Eso sí, hay que tener en cuenta que no funciona para ordenar campos...
Guardar datos en Hoja de Cálculo Excel desde VB6

Guardar datos en Hoja de Cálculo Excel desde VB6

Os publico un ejemplo simple de cómo generar un archivo excel desde Visual Basic 6. A partir de este ejemplo se puede adaptar para cada caso concreto, añadir bucles, tomar los datos de un recordset, etc. 'Creamos el objeto Set objExcel = CreateObject("Excel.Application") 'Ponemos la aplicación excel no visible 'para no ver como se genera la hoja objExcel.Visible = False objExcel.Workbooks.Add 'Hoja activa Set hoja = objExcel.ActiveSheet irow = 1 'Numero de fila 'Rellenamos las celdas segun queramos ' bucles , etc.... 'Lo pasamos a excel hoja.Cells(irow + 1, 1) = valor hoja.Cells(irow + 1, 2) = valor hoja.Cells(irow + 1, 3) = valor hoja.Cells(irow + 1, 4) = valor hoja.Cells(irow + 1, 5) = valor hoja.Cells(irow + 1, 6) = valor 'Opcional : damos formato 'Como ejemplo a la cabecera hoja.Rows(1).Font.Bold = True hoja.Rows(1).Font.Color = vbRed'Autoajustamos hoja.Columns("A:Z").AutoFit 'ponemos visible objExcel.Visible = True 'Guardamos el archivo objExcel.ActiveWorkbook.SaveAs "C:" & NombreExcel & ".xls" Set hoja = Nothing Set xlibro = Nothing Set objExcel =...