|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - cpmario
Páginas: 1 2 [3] 4 5 ... 26
51
« en: Sábado 16 de Agosto de 2008, 18:26 »
Te informo que lo que tratas de hacer es difícil con VB6. Le di una buscada en Planet Source Code y en Google para ver si había algo de ese código y no encontré nada. Si llegas a encontrar algo te agradeceré lo informes.
53
« en: Jueves 7 de Agosto de 2008, 23:13 »
Si las operaciones que estás tratando de hacer deben de corresponder a la Configuración Regional del Sistema. Entonces tienes un error en el código KeyPress de los controles TextBox. Debe ser así: Private Sub Text1_KeyPress(KeyAscii As Integer) Dim sCar As String * 1 sCar = Chr(KeyAscii) If sCar = "." Or sCar = "," Then 'comprueba si se ha pulsado coma o punto y lo convierte al formato numérico del sistema If sCar <> sDecimal Then KeyAscii = Asc(sDecimal) End If sCar = Chr(KeyAscii) ' si ya se ha puesto un punto o coma decimal, no admite otro If (InStr(Text1, sCar) > 0) Then KeyAscii = 0 Exit Sub End If ElseIf InStr("0123456789.," & Chr(8), sCar) = 0 Then ' sólo admite números, signo negativo, punto, coma y retroceso KeyAscii = 0 Exit Sub ' comprueba que el signo menos esté sólo al principio ' Nota: Si no queremos negativos, quitar esta condición ElseIf sCar = "-" Then If InStr(2, "-", Text1) = 0 Then KeyAscii = 0 End If End If End Sub
De otra manera las operaciones que realices tendrán error. Si lo anterior no es el problema entonces trata con esto en la línea que dices: Text7(0) = Format(((Val(Text13) * Val(Text1) * Val(Text1)) / 8) + ((Val(Text22) * Val(Text1) * Val(Text1)) / 8) + ((Val(Text31) * Val(Text1) * Val(Text1)) / 8), "###########.00")
54
« en: Jueves 7 de Agosto de 2008, 05:20 »
No explicas que hiciste. Tal vez te faltó algo como esto en todas las lineas. imp1.Text = Val(cant1.Text) * Val(pu1.Text)
55
« en: Lunes 4 de Agosto de 2008, 15:57 »
Si bien pueden guardarse casi cualquier cosa en una base de datos en un campo binario. No conozco ningún control que permita tomar un documento Word de una base de datos y visualizarlo. Si puede hacerse lo anterior con el texto de formato enriquecido (con extensión rtf) que Word también maneja. Si esto último es lo que deseas, solo necesitas enlazar un control RichTextBox a la base de datos.
56
« en: Lunes 4 de Agosto de 2008, 09:30 »
Así es como hay que escribir las preguntas, mostrando el código, ya que es más fácil de entender y contestar. La siguiente línea tiene un error en la lógica y solo raras veces funcionará. Text1 no puede ser a la vez mayor que Text2 y también menor que Text2 y solo funcionará si comparas el contenido de Text1 y Tex2 como cadenas de texto y no como números, por ejemplo: Text1 = "10" y Text2 = "2", más abajo te explico la razón. If Text1 > ((Text2) / 2) And Text1 < Text2 Then
No es lo mismo comparar texto que números. Cuando comparas texto, si escribes en Text1 "10" y un "2" en Text2 lo siguiente es cierto: Text1 < Text2 Pero si lo anterior lo comparas como valor numérico es falso. Te sugiero que uses la función Val(Text1) y corrijas la lógica de la línea anterior. por ejemplo: If Val(Text1) > Val(Text2) / 2 Then
57
« en: Lunes 4 de Agosto de 2008, 08:53 »
Te explico. Si te fijas en el control data en la propiedad DatabaseName, solo tiene el nombre del archivo de la base de datos (Movies.mdb) no tiene todo el Path de donde encontrar la base de datos. Si tu colocas el proyecto en cualquier fólder, al ejecutar el programa, este encuentra la base de datos. Pero si escribieras el path completo tendrías que estarlo cambiando de acuerdo al fólder donde se encuentra la base de datos. On Error Resume Next ChDrive CurDir(App.Path) ChDir App.Path
La primera línea es para cuando se genera un error si el programa se desea manejar en una red. Cuando el programa se maneja a través de una red una de las líneas que le sigue genera un error. Las otras 2 líneas le dicen al programa que el directorio de trabajo es donde se encuentra el proyecto o el ejecutable. Cuando el control data busca la base de datos en este caso Movies.mdb, la busca en el directorio de trabajo del programa. Lo anterior permite que el programa junto con la base de datos pueda colocarse en cualquier fólder y siga funcionando. Se puede hacer también colocando lo siguiente en Form_Load. Private Sub Form_Load() Dim strAppPath As String strAppPath = App.Path & IIf(Right$(App.Path, 1) <> "", "", "") Data1.DatabaseName = strAppPath & "Movies.mdb" End Sub
58
« en: Viernes 1 de Agosto de 2008, 03:10 »
Te adjunto un pequeño proyecto para que te orientes como manejar el DBCombo. Revisa las referencias y los controles. Debes de tener instalado el Service Pack 6 del Visual Basic para que puedas manejar las base de datos Access 2000.
59
« en: Viernes 1 de Agosto de 2008, 02:32 »
El error es el siguiente: Dim Arreglo1(),Arreglo2() as string
La primera variable Arreglo1() se dimensiona como variable tipo variante y la segunda como tipo string. Para que funcione adecuadamente debe ser así: Dim Arreglo1() As String, Arreglo2() As String
60
« en: Jueves 31 de Julio de 2008, 21:13 »
A mi si me funciona el código con pequeños cambios. En un módulo BAS Option Explicit Private Type Normal ' Declaro el Tipo de Arreglo Que Necesito Con sus Campos Patente As String Pedimento As String Archivo As String Firma As String Fecha As String Hora As String Regimen As String Clave As String RFC As String Nombre As String End Type ' hay un espacio extra en Arreglo Global1() lo eliminé Public ArregloGlobal1() As Normal Public ArregloGlobal2() As Normal ' Declaro Globalmente los arrays ' La subrutina no debe de ser privada, ya que la llamarás desde una forma Sub Fact(Pat As String, ByVal ini As Long, ByVal fin As Long, ByRef IndiPat() As Normal, ByRef ConsoPat() As Normal) Dim temp1(), temp2() As Normal '"Serie de Validaciones" Stop End Sub
En una forma, colocando un control CheckBox Option Explicit Private Sub Command1_Click() Dim fechai, fechaf Fact Check2.Caption, fechai, fechaf, ArregloGlobal1(), ArregloGlobal2() End Sub
Al ejecutar el código se detiene en el Stop
61
« en: Jueves 31 de Julio de 2008, 05:35 »
62
« en: Miércoles 30 de Julio de 2008, 20:26 »
Si lo que desea MArio85 es "un arreglo dinámico global" Entonces se necesita ByRef y no ByVal
63
« en: Miércoles 30 de Julio de 2008, 18:42 »
Si deseas colocar un array en forma global debes de dimensionarlo en un módulo BAS por ejemplo Public gastrArreglo1() As String Public gastrArreglo2() As String
En el código que colocas estás haciendo mezclas con el otro tipo de Instrucción Type, lo que hace difícil de entender tu código. Type también maneja arrays (arreglos) pero de distinta manera. Además tienes en la línea Sub Modi_array(arreglo1 as type1, arreglo2 as type2) y en el código que sigue no usas ni arreglo1 ni arreglo2. Lo que se usa para pasar un arreglo a una subrutina no es ByVal es ByRef, por ejemplo Sub SortArrayDic(ByRef sArray() As String, lngLenDic As Long)
64
« en: Miércoles 30 de Julio de 2008, 18:18 »
Si el arreglo está vacío la función Ubound también marcará un error. Debes basarte en la otra variable (la que suma) la i Por ejemplo: If i = 0 then 'El arreglo está vacío Endif
La alternativa es manejar el error que aparece cuando el arreglo está vacío con On Error
65
« en: Jueves 24 de Julio de 2008, 18:53 »
He estado revisando la web para poder ayudarte, me he encontrado que has puesto este post en muchos lugares, con más datos, que los que pusiste aquí. He buscado en Google con la frase en inglés "Object library not registered" ya que siempre son en mayor cantidad la respuestas a este tipo de problemas raros. Lo mejor que puedo recomendarte es que revises esta página: http://support.microsoft.com/?scid=kb%3 ... 0&x=16&y=9Y descargues una versión más nueva del MDAC en esta página: http://msdn.microsoft.com/en-us/data/aa937729.aspxDescarga la tercera opción MDAC 2.8, ya que MDAC 2.8 SP1 no es compatible con XP. Recuerda que tienes que cambiar las referencias en el proyecto a la versión 2.8.
66
« en: Jueves 24 de Julio de 2008, 18:05 »
No ha habido respuestas a tu pregunta, la causa probable es que estás haciendo mal la pregunta. En parte es porque estás abreviando y dando por hecho que sabemos de que se trata, en todas estás cosas: (por ejemplo AO), "Errores al cargar"..., "No enviar"... También hace falta saber de que se trata tu proyecto, que controles usa, si tiene controles personalizados, que referencias tiene, es para una base de datos DAO o ADO. El VB6 tiene el service pack 6?.
67
« en: Miércoles 23 de Julio de 2008, 07:34 »
Tengo la impresión de que no presionaste la tecla F1 al abrir la ventana del programa que te adjunté.
68
« en: Martes 22 de Julio de 2008, 21:49 »
Para mover a la derecha y en el centro Form1.Move (Screen.Width - Form1.Width), (Screen.Height - Form1.Height) 2
Para mover a la derecha y arriba Form1.Move (Screen.Width - Form1.Width), 0
69
« en: Martes 22 de Julio de 2008, 20:20 »
Te adjunto un pequeño proyecto como un ejemplo que sirve para llamar un archivo con extensión hlp. Además te proporciono otros detalles que debes saber. - En VB6 IDE (diseño del programa) haz clic en el menú Proyecto y después en la opción 'Propiedades de' MiPrograma. En la ventana que aparece escribe el nombre del archivo de ayuda. - Tienes que agregar al proyecto, el componente llamado Microsoft Common Dialog Control. - En lugar del nombre del mi archivo de ayuda, debes de colocar el nombre del tuyo.
70
« en: Martes 22 de Julio de 2008, 07:14 »
Como no das detalles, te coloco algo de código para empezar. Para saber la resolución de la pantalla y para mover la forma en la pantalla. Dim TWidth As Variant, THeight As Variant Dim strScreenRes As String ' Obtener resolución de pantalla TWidth = Screen.Width Screen.TwipsPerPixelX THeight = Screen.Height Screen.TwipsPerPixelY strScreenRes = TWidth & " x " & THeight If strScreenRes = "640 x 480" Then 'codigo para posicionar ventana Else 'colocar en el centro de la pantalla frmMainMDI.Move (Screen.Width - frmMainMDI.Width) 2, (Screen.Height - frmMainMDI.Height) 2 End If
Para fijar la forma en la pantalla debes de guardar en el registro la propiedad top y left de la forma MDI y obtener estas cifras al ejecutar el programa de nuevo.
71
« en: Viernes 18 de Julio de 2008, 02:53 »
73
« en: Jueves 26 de Junio de 2008, 14:00 »
Muestra el Sub Main, para saber que haz elaborado.
74
« en: Jueves 12 de Junio de 2008, 06:45 »
Te equivocaste de foro, aquí solo Visual Basic
75
« en: Miércoles 11 de Junio de 2008, 18:24 »
Una solución sería la siguiente: Crea una tabla adicional, en la base de datos que ya tienes, con 2 campos de texto y luego enlaza dichos campos con los existentes en el reporte. Antes de llamar el reporte llenas los campos de la base de datos. Espero se entienda
Páginas: 1 2 [3] 4 5 ... 26
|
|
|