Ver Mensaje Individual
  #8 (permalink)  
Antiguo 23/01/2009, 15:28
Avatar de Pablus00
Pablus00
 
Fecha de Ingreso: diciembre-2003
Ubicación: A un click de distancia
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 11
Definicion y Tips para la programacion 3

Trabajando con una colección:
introducir un nombre para cada hoja del libro activo:
Dim MiNombre as String
Dim hoja as Worksheet
For Each hoja in Worksheets
MiNombre = InputBox("Ingrese nombre de hoja: ")
next hoja
Ejemplo2: introducir valores para cada celda de un rango
Dim celdita as Range
For Each celdita in ActiveSheet.Range("A1:B10")
celdita.Value = InputBox("Ingrese valor: ")
next celdita
Ejemplo3: introducir los mismos valores en celdas de todas las hojas
Dim hoja as Sheets
For Each hoja in Sheets
hoja.Range("E3").Value = Date
hoja.Range("F3").Value = Time
next hoja
Trabajando con objetos:
(En cada punto encontrarán varios ejemplos. Ver otras rutinas en Macros)
1- Llamando a un Userform, desde un botón:
En una hoja de Excel, los botones que lanzan una acción, pueden ser colocados con la barra de Formularios o Cuadro de Controles.
  • Botón de formulario: se asigna una macro que previamente se escribió en un módulo en el Editor de Visual Basic. Ejemplo:
Sub mostrando ()
UserForm1.Show 'nombre del Userform que se desea mostrar en la hoja
End Sub
  • Botón del Cuadro de controles: una vez dibujado en la hoja, clic derecho, Ver código y escribir la rutina (ésta se habilita en la hoja donde aparecerá el control). Ejemplo:
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

2- Asignando valores a los Cuadros de texto:
Ejemplos de cómo registrar datos en los textbox:
TextBox1.Value = "CANCELADO"
TextBox2 = Sheets("Hoja3").Range("A5").Value
TextBox2 = Range("C1").Value + Range("C2").Value

3- Volcar datos de un UserForm a la hoja:
Cells(fila, col).Value = TextBox1.Value

Sheets("Hoja1").Cells(fila, col).Offset(1, 0).Value = TextBox2.Value

4- Cargar datos a un ListBox de un UserForm:
Private Sub UserForm_Activate()
Dim item As Variant
For Each item In Range("F1:F6")
ListBox1.AddItem item.Value
Next item
End Sub

__________________
-- Nunca te des por vencido, aún vencido -- Web