|
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 - Brroz
Páginas: 1 ... 5 6 [7] 8 9 ... 43
152
« en: Lunes 3 de Enero de 2005, 12:17 »
Hola. Bufff... aspecto de la programación... no sé muy bien a qué te refieres, pero me da que puede ser algo como para escribir un libro. Lo que si te puedo decir sobre este código en concreto es que realices la validación y formateo (para curarte en salud) de fecha de esta forma: Dim s1 As String s1 = InputBox("Introduce fecha", s1) If IsDate(s1) Then s1 = Format(s1, "dd/mm/yyyy") Else MsgBox "La fecha no me vale" End If
Suerte.
153
« en: Lunes 3 de Enero de 2005, 12:09 »
Hola MindEye. No sé si lo que quieres hacer es posible (aunque me temo que no). Lo que si probablemente se pueda es ejecutar varias sentencias sql de una tacada, ¿cómo?, pues separándolas por ; (y esto probablemente tenga que ver con el error que obtienes). Podrías hacer esto: SQL = Insert into Tabla values(1,2,3);Insert into Tabla values(3,3,1);Insert into Tabla values(10,9,9);
Personalmente nunca se me ha dado por probarlo, pero si tal mira tú a ver... Suerte.
154
« en: Lunes 3 de Enero de 2005, 12:00 »
Hola.
Hola deberías usar la función Format para indicar el formato de fecha/hora que utilizas... pero por otro lado: sólo tú sabes qué resultado devuelve la función getdate() a la que llamas.
Abur.
155
« en: Lunes 3 de Enero de 2005, 11:37 »
Hola. Resumiendo: En tiempo de diseño añade un solo CommandButton. Establece su propiedad Index = 0. Para añadir un nuevo CommandButton: Dim i1 As Integer i1 = Command1.Ubound + 1 Load Command1(i1) Command1(i1).Move 120, 120 * i1 + 60 ' A donde correspondiese Command1(i1).Visible = True Command1(i1).Caption = "Botón " & i1
Para controlar las acciones de cada botón: Private Sub Command1_Click (Index As Integer) Select case Index case 0 MsgBox "Pulsaste el botón 0" case 1 MsgBox "Pulsaste el botón 1" case 2 MsgBox "Pulsaste el botón 2" case else MsgBox "Pulsaste otro botón" End Select End Sub
Con esto te debe servir. Suerte.
156
« en: Lunes 3 de Enero de 2005, 11:26 »
Hola jacvf.
Un formulario de vb como tal creo que no podrás incluirlo en excel, pero puedes usar una clase parecida (UserForm) que usa los controles 'Microsoft Forms 2.0 Object Library'. Como siempre abre el editor de vba de excel y sobre pulsa con el boton derecho del ratón en el explorador de proyectos. Pulsa 'insertar' y añade un nuevo 'userform'. Añádele los controles que necesites y a funcionar...
Suerte.
157
« en: Lunes 3 de Enero de 2005, 11:21 »
Hola pakman.
Así por las buenas, mediante alguna propiedad o método no puedes cambiar el color del texto, tendrías que subclasificar.
Lo mejor que puedes hacer es crear una imagen con el texto que desees y asignarla a la propiedad Picture del botón. Para hacer esto tienes que decir que el estilo del botón es gráfico (propiedad Style=1).
Suerte.
158
« en: Lunes 3 de Enero de 2005, 11:18 »
Jola joja. La propiedad 'SelectedItem' del objeto listitem devuelve una referencia al listitem que ha sido seleccionado en último lugar, o nothing si no hay ningún item seleccionado. Para recorrer todos los items seleccionados, usa un bucle y comprueba la propiedad Selected para cada uno de los items. Dim itm1 as ListItem For each itm1 in ListView1.ListItems If itm1.Selected Then MsgBox "Seleccionado" Next itm1
Chao.
159
« en: Miércoles 29 de Diciembre de 2004, 12:40 »
160
« en: Miércoles 29 de Diciembre de 2004, 12:34 »
Hola. Cambia esto ' variables Excel Dim xlsApli As Excel.Application Dim xlsWorkB As Excel.Workbook Dim xlsSheet As Excel.Worksheet
por esto ' variables Excel Dim xlsApli As Object Dim xlsWorkB As Object Dim xlsSheet As Object
Cambia también esto Set xlsApli = New Excel.Application Set xlsApli = CreateObject("Excel.Application") Set xlsWorkB = xlsApli.Workbooks.Add Set xlsSheet = xlsWorkB.Worksheets.Add
por esto otro Set xlsApli = CreateObject("Excel.Application") Set xlsWorkB = xlsApli.Workbooks.Add Set xlsSheet = xlsWorkB.Worksheets.Add
Chao.
161
« en: Miércoles 29 de Diciembre de 2004, 12:27 »
Hola Desarrollo. La verdad, esto nunca lo he probado en un DataCombo (no uso, gracias), pero en un combobox corriente y moliente algo de este estilo funciona: Option Explicit Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Sub BuscarEnCombo(ByRef Combo As ComboBox, ByRef KeyAscii As Integer) If KeyAscii = 27 Or KeyAscii = 13 Or Combo Is Nothing Then Exit Sub Dim s1 As String, lPos As Long If Combo.SelLength = 0 Then s1 = Combo.Text & Chr(KeyAscii) Else s1 = Left(Combo.Text, Combo.SelStart) & Chr(KeyAscii) End If lPos = SendMessage(Combo.hwnd, &H14F, 1&, 0&) lPos = SendMessage(Combo.hwnd, &H14C, -1&, ByVal s1) If lPos > -1 Then Combo.ListIndex = lPos Combo.SelStart = Len(s1) Combo.SelLength = Len(Combo.Text) - Combo.SelStart KeyAscii = 0 End If End Sub
Suerte.
162
« en: Miércoles 29 de Diciembre de 2004, 12:21 »
Hola. En tiempo de diseño ve al formulario, haz click con el botón derecho sobre el control datagrid y selecciona 'Propiedades' en el menú emergente. En la pantalla de propiedades selecciona la pestaña 'Diseño'. Aquí podrás especificar el ancho para cada una de las columnas. También puedes establecer el ancho para cada una de las columnas del datagrid en tiempo de ejecución mediante la propiedad Width de cada columna. Puedes obtener una referencia a cada columna con la colección Columns del control. Por ejemplo: 'Cambia el ancho de la 3ª columna DataGrid1.Columns(2).Width = 1200
Suerte.
163
« en: Miércoles 29 de Diciembre de 2004, 12:15 »
Hola. Emple es una clase creada por alguien, pero desde luego no es una clase Connection de ADO. Y lo deduzco más que nada por este método al que llamas: Aparte de esto no consigo comprender lo que intentas explicarme... pero te diré que una forma sencilla de ir aprendiendo SQL es usar access y su generador de consultas. Primero crea una consulta mediante la vista 'Diseño' y luego usa su vista 'SQL' para examinar la correspondiente sentencia. Chao.
164
« en: Miércoles 29 de Diciembre de 2004, 12:08 »
Hola. Msgbox "La resolución de mi pantalla está en " _ & Screen.Width / Screen.TwipsPerPixelX & " x " _ & Screen.Height / Screen.TwipsPerPixelY
Chao.
165
« en: Miércoles 29 de Diciembre de 2004, 12:05 »
Hola Luis_rdr.
Este tema no tiene nada que ver con VB. Que estes desarrollando un programa en vb no quiere decir que cualquier duda que te surja este relacionada con vb. Busca en internet que hay bastante info y ejemplos de estas cosas, o postea en el foro de programación de videojuegos, por ejemplo.
De todas formas, supongo que debes utilizar un producto vectorial entre el vector dado por el desplazamiento de la pelota y supongo que el vector normal de la pared con la que choca.
Si tienes alguna duda de VB, ya sabes...
Suerte.
166
« en: Martes 28 de Diciembre de 2004, 17:28 »
Para intentara hablar con Gandalf_malaga7: http://foros.solocodigo.com/index.php?showuser=5708Donde dice algo así como 'Correo pincha aquí', pos eso, pincha ahí. También puedes probar con un mensaje personal, aunque si hace tiempo que no estra por aquí, pues... Chao.
167
« en: Martes 28 de Diciembre de 2004, 17:22 »
Hola.
El código que muestras sirve realmente de poco... Analiza y estudia la clase instanciada por la variable 'emple' (que me da que no la has creado tu) y entérate de cómo funciona. Para filtrar datos usa una sentencia SQL con la correspondiente cláusula WHERE, que por supuesto admite los operadores AND, OR, <, >, etc, etc.
Suerte.
168
« en: Martes 28 de Diciembre de 2004, 17:16 »
kai crow7827.
Otra preguntita... ¿Sabes para qué sirve una variable?
169
« en: Martes 28 de Diciembre de 2004, 09:40 »
Hola Cyclope.
Podría no funcionar el reconocimiento por alguna posible pérdida de color...¿no?
Para optimizar desde luego que lo mejor sería copiar las imagenes a bitmaps compatibles seleccionados en un DC para luego comprobar el DC y así evitar trabajar directamente en el control.
También podría ser interesante usar C, por ejemplo, y no VB, pero...
Chao.
170
« en: Martes 28 de Diciembre de 2004, 09:35 »
Hola ZeroCool. ¿Qué tal si utilizas el evento Error del control winsock? Uno de sus parámetros es un código que te puede ayudar. Constante Valor Descripción sckOutOfMemory 7 Sin memoria sckInvalidPropertyValue 380 El valor de la propiedad no es válido. sckGetNotSupported 394 No se puede leer la propiedad. sckSetNotSupported 383 La propiedad es de sólo lectura. sckBadState 40006 Protocolo o estado de conexión incorrecto para la solicitud o la transacción requerida. sckInvalidArg 40014 El argumento que se pasó a una función no estaba en el formato correcto o en el intervalo especificado. sckSuccess 40017 Correcto. sckUnsupported 40018 Tipo Variant no aceptado. sckInvalidOp 40020 La operación no es válida en el estado actual. sckOutOfRange 40021 El argumento está fuera del intervalo. sckWrongProtocol 40026 Protocolo erróneo para la solicitud o la transacción requerida. sckOpCanceled 10004 Se canceló la operación. sckInvalidArgument 10014 La dirección solicitada es una dirección de multidifusión, pero el indicador no está activado. sckWouldBlock 10035 El socket es no bloqueante y la operación especificada se bloqueará. sckInProgress 10036 Se está efectuando una operación de Winsock bloqueante. sckAlreadyComplete 10037 Se completó la operación. No se están efectuando operaciones bloqueantes. sckNotSocket 10038 El descriptor no es un socket. sckMsgTooBig 10040 El datagrama es demasiado grande para el búfer y se truncará. sckPortNotSupported 10043 El puerto especificado no es compatible. sckAddressInUse 10048 Dirección en uso. sckAddressNotAvailable 10049 La dirección no está disponible en la máquina local. sckNetworkSubsystemFailed 10050 Error en el subsistema de red. sckNetworkUnreachable 10051 El host no puede encontrar la red en este momento. sckNetReset 10052 Expiró el tiempo de espera de la conexión antes de establecer SO_KEEPALIVE. sckConnectAborted 10053 La conexión se ha cancelado al sobrepasar el tiempo de espera o por otro error. sckConnectionReset 10054 La conexión se ha restablecido desde el lado remoto. sckNoBufferSpace 10055 No hay espacio disponible en el búfer. sckAlreadyConnected 10056 El socket ya está conectado. sckNotConnected 10057 El socket no está conectado. sckSocketShutdown 10058 El socket se ha desactivado. sckTimedout 10060 Se ha sobrepasado el tiempo de conexión. sckConnectionRefused 10061 Se ha forzado el rechazo de la conexión. sckNotInitialized 10093 Es necesario llamar primero a WinsockInit. sckHostNotFound 11001 Respuesta autorizada: host no encontrado. sckHostNotFoundTryAgain 11002 Respuesta no autorizada: host no encontrado. sckNonRecoverableError 11003 Errores no recuperables. sckNoData 11004 Nombre válido; no hay registro de datos del tipo solicitado.
Prueba a ver... Suerte.
171
« en: Martes 28 de Diciembre de 2004, 09:30 »
Hola vgt. Parece que en el campo de la tabla tienes el nombre y ruta del archivo de imagen y tu recuperas por un lado el path y por otro el nombre. Usa el valor del campo completo (ruta y nombre) para cargar la imagen con LoadPicture. Dim sImg as String sImg = iif IsNull( _ adcClientes.Recordset.Fields("NumeroCliente").Value _ ,"", adcClientes.Recordset.Fields("NumeroCliente").Value) If sImg = "" Then lblNoDisponible1.Visible = True Set imgFoto1.Picture = Nothing Else lblNoDisponible1.Visible = False Set imgFoto1.Picture = LoadPicture(sImg) End If Screen.MousePointer = vbDefault
Suerte.
172
« en: Martes 28 de Diciembre de 2004, 09:20 »
Hola Martinferrira.
¿No podrías ejecutarlo mediante Shell?
Chao.
173
« en: Martes 28 de Diciembre de 2004, 09:18 »
Hola Desarrollo.
Te falta una referencia a la biblioteca de objetos de Excel, pero puedes hacer una cosa en vez de añadirla:
Puedes instanciar las clases de excel mediante 'CreateObject', obviando el Set variable = New clase. Es decir: declara esas variables como Object y elimina la línea Set xlsApli = New Excel.Application, que además en el código es redundante. Con esto ya no te debería dar ese error.
Suerte.
174
« en: Martes 28 de Diciembre de 2004, 09:13 »
Se non me trabuco... con ADO también funciona el '%', igual que con otras bases de datos SQL.
Abur.
175
« en: Martes 28 de Diciembre de 2004, 09:11 »
Hola Catha. Lo primero que deberías hacer es crear un índice para cada uno de los campos relacionados en las distintas tablas. Esto ayudará mucho. Establece la relación entre las tablas mediante una cláusula JOIN, LEFT JOIN, RIGHT JOIN o INNER JOIN según sea el caso. Por supesto que la unión debe hacerse por los campos que relacionan los registros en las tablas y que previamente habrás indexado. Si además utilizas objetos ADO en vez de un control, notarás una notable mejora del rendimiento. Por ejemplo: SELECT A.Codigo, A.OtroCampo, B.Descripción, C.Precio FROM Tabla1 A LEFT JOIN Tabla2 B ON A.Codigo = B.Codigo LEFT JOIN Tabla3 C ON A.Codigo = C.Codigo WHERE A.Codigo=999
Chao.
Páginas: 1 ... 5 6 [7] 8 9 ... 43
|
|
|