| |||
![]() Hola tengo un problema yo tengo una base de datos excel con facturas y me gustaria que en el formulario se puedan meter los registros que se quieran como cuando introduces registros en una tabla de access me entendeis porque hasta ahora los estoy limitando a los doce texbox que tengo en mi formulario si sabe alguien algo le ruego que me saque de dudas gracias |
| |||
ok sabes como crear un data grid usando excel. Logra que en un formulario que puedas añadir los campos que quieras como en access. has llenado alguna tabla de access fijate como lo hace access. eso quiero hacer yo en un formulario atacando a base de datos excel Última edición por flargo69; 02/06/2005 a las 08:43 |
| |||
Cita: ni una coma, ni un punto, .... tu teclado no tiene signos de puntuación???
Iniciado por flargo69 ok sabes como crear un data grid usando excel en un formulario que puedas añadir los campos que quieras como en access has llenado alguna tabla de access fijate como lo hace access eso quiero hacer yo en un formulario atacando a base de datos excel ![]() Es que así, es imposible enterarse de lo que necesitas... Lee tu mensaje y dime si lo entiendes.... ![]()
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| |||
perdon por no saber expresarme, quiero hacer un formulario con varios campos texbox y que cuando lo ejecute si no me llegan los campos se puedan crear automaticamente los que quiera, como cuando llenas una base de datos en modo diseño |
| ||||
mira en excel podes crear estos formularios, excel te crea un textbox por cada columna donde estes ingresando datos. nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| ||||
entonces pone un msflexgrid, e ingresas datos via los textbox, y despues si deseas los guardas en una base de datos o bien los pasas a excel nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
Entonces lo que quieres es crear controles en tiempo de ejecución, en tu caso textbox en la medida que los vayas necesitando. Te paso un código que crea listbox en tiempo de ejecución, puedes adecuarlo a lo que necesitas.
Código:
salu2 ;) Dim oLabel As Label Private WithEvents oCommand As CommandButton Private WithEvents oCommand2 As CommandButton Private WithEvents oListBox As ListBox Private WithEvents oTimer As Timer Private Sub Form_Load() Me.WindowState = vbMaximized Set oTimer = Me.Controls.Add("VB.Timer", "oTimer", Me) oTimer.Interval = 100 oTimer.Enabled = True Set oLabel = Me.Controls.Add("VB.Label", "Label1", Me) oLabel.Top = 10 oLabel.Left = 10 oLabel.Height = 255 oLabel.Caption = "Crear 10 listboxes como prueba" oLabel.Width = Me.TextWidth(oLabel.Caption) + 100 Set oCommand = Me.Controls.Add("VB.CommandButton", "oCommand", Me) oCommand.Top = oLabel.Top oCommand.Left = (oLabel.Left + oLabel.Width) + 100 oCommand.Height = 255 * 1.5 oCommand.Caption = "Crear ListBoxes" oCommand.Width = Me.TextWidth(oCommand.Caption) * 1.5 Set oCommand2 = Me.Controls.Add("VB.CommandButton", "oCommand2", Me) oCommand2.Top = oLabel.Top oCommand2.Left = (oCommand.Left + oCommand.Width) + 100 oCommand2.Height = 255 * 1.5 oCommand2.Caption = "Eliminar ListBoxes" oCommand2.Width = Me.TextWidth(oCommand2.Caption) * 1.5 oLabel.Visible = True oCommand.Visible = True oCommand2.Visible = True oCommand2.Enabled = False End Sub Private Sub oCommand_Click() Dim cName As String Dim nCount As Long Dim nListBox As Long oCommand.Enabled = False For nListBox = 1 To 10 cName = "ListBox_" & nListBox Set oListBox = Me.Controls.Add("VB.ListBox", cName, Me) If nListBox <= 1 Then oListBox.Top = oCommand.Top + oCommand.Height + 10 oListBox.Left = oLabel.Left oListBox.Width = oLabel.Width * 1.5 Else cName = "ListBox_" & (nListBox - 1) oListBox.Top = Me.Controls(cName).Top + Me.Controls(cName).Height + 10 oListBox.Left = Me.Controls(cName).Left oListBox.Width = Me.Controls(cName).Width End If oListBox.Height = 255 * 3 For nCount = 0 To nListBox oListBox.AddItem "Elemento " & nCount Next oListBox.Visible = True Next oCommand2.Enabled = True oCommand2.SetFocus End Sub Private Sub oCommand2_Click() Dim nListBox As Long For nListBox = 1 To 10 cName = "ListBox_" & nListBox Me.Controls.Remove cName Next oCommand2.Enabled = False oCommand.Enabled = True End Sub Private Sub oListBox_Click() MsgBox "oListBox.Name = " & oListBox.Name End Sub Private Sub oTimer_Timer() Static cLastLB As String If Left(Me.ActiveControl.Name, 7) = "ListBox" Then If Not cLastLB = Me.ActiveControl.Name Then cLastLB = Me.ActiveControl.Name Set oListBox = Me.Controls(cLastLB) oListBox_Click End If End If End Sub
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| ||||
ahh estas trabajando con VBA, no con VB, que es un tanto mas distinto.. el cual yo en lo personal no lo he trabajado el VBA de Excel.. siento no poder ayudarte en esa extencion del VB nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
Cita: tienes que añadir el control, en Herramientas - Controles Adicionales - Microsoft FlexGrid Control
Iniciado por flargo69 como se pone un msflexgrid gracias por la informacion
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| ||||
esque ese control es unicamente para vb no para vba nos vemos
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
Cita: mmmm, porque no puedo insertar aquí una foto de una captura de pantalla, pero os garantizo que yo tengo ese control en VBA de Excel
Iniciado por GeoAvila esque ese control es unicamente para vb no para vba nos vemos ![]()
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| ||||
que interesante me gusraria ver ese ejemplo puesto que nunca lo havia visto, nj tampo intentado colocarlo, pero me imagino que le podes decir al amigo forero como hacerlo. nos vemos....
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
Cita: no se porque no lo tenéis vosotros, pero aquí lo podéis ver en un pantallazo de mi máquina
Iniciado por GeoAvila que interesante me gusraria ver ese ejemplo puesto que nunca lo havia visto, nj tampo intentado colocarlo, pero me imagino que le podes decir al amigo forero como hacerlo. nos vemos.... http://www.terra.es/personal3/mingao...20en%20vba.jpg utilizo Excel 2002 SP3
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| |||
Cita: y el 2002 y el xp no son el mismo?
Iniciado por flargo69 yo tengo office xp
__________________ Lo importante no es saber, sino tener el teléfono del que sabe :risa: |
| ||||
revisa tus controles, no si ya lo haz echo porque segun el compañero esta entres los controles en los cuales tenes que ir y seleccionar los controles adicionales que deseas usar. nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |