¿Cómo crear un formulario similar a html-javascript en VB 6.0?
Microsoft Word es un software de procesamiento de textos con el que estamos familiarizados y sus poderosas funciones brindan una gran ayuda para nuestro trabajo. La aplicación de Visual Basic para Aplicaciones (VBA) ha agregado muchas funciones a Word 97. El uso razonable y apropiado de VBA puede brindar a los usuarios una gran comodidad. A continuación se muestran algunos ejemplos del uso de la programación VBA para procesar automáticamente formularios de Word.
1. Crear una tabla e insertar texto
La función de este ejemplo es insertar una tabla con 3 filas y 4 columnas al inicio del documento. Puede utilizar la estructura Para cada... Siguiente para recorrer cada celda de la tabla. En la estructura For Each....Next, el método InsertAfter se usa para agregar texto a las celdas de la tabla ("Celda 1", "Celda 2", etc.) y la propiedad oTable.AutoFormat se usa para especificar el formato aplicado a la tabla. El resultado de la ejecución se muestra en la Figura 1:
@@0869600.JPG; Figura 1@@
Set oDoc = ActiveDocument
Set oTable= oDoc.Tables Agregar(Rango:=oDoc.Tables.Add(Rango(Inicio:=0, Fin:=0)))Rango(Inicio:=0, Fin:=0), NumRows
:=3. , NumColumns:=4)
iCount = 1
Para cada oCell en oTable.Range.Cells
oCell.Range.InsertAfter "First" lyFont:= True, ApplyColor:=True
2. Inserte números de serie en las columnas y filas de la tabla
1. simplemente reemplace For Simplemente cambie el contenido de Cada... Estructura siguiente al siguiente contenido. Puede cambiar la estructura Siguiente a la siguiente línea de su programa, que utiliza el método InsertAfter para agregar números de secuencia a las celdas de la tabla ("Fila 1", "Fila 2", etc.).
Si iCount Mod 4 = 1 Entonces
oCell.InsertAfter "Row " & (iCount - 1) / 4 & "Row "
Finalizar si p>
p>
iCount = iCount + 1
3. Insertar fecha en la columna de la tabla
(1) Para insertar la fecha en la primera columna de la tabla, use For bucle Cada... La siguiente estructura recorre cada celda de la tabla y, cuando se considera que una celda es la primera columna, se inserta la fecha. Formatt (Fecha, ...) se utiliza para especificar el formato de la fecha. La fecha en el siguiente ejemplo comienza desde Fecha+1 (es decir, el día siguiente de la fecha actual) y el usuario puede personalizarla según sea necesario. .
Establecer oDoc = ActiveDocument
Establecer oTable = oDoc.Tables.Add(Range:=oDoc.Range(Inicio:=0,End:=0),NumRows:= p>
p>
4,NumColumns:=4) /p>
iCount = 1
Para cada oCell en oTable.Tables.Add(Range :=oDoc.Range( Inicio:=0,End:=0),NumRows:=
4,NumColumns:=4)
Si iCount Mod 4 = 1 y iCount > 4 Luego
oCell.Range.InsertAfter Format( Fecha + (iCount - 1) / 4, "AAAA.MM.DD ")
Finalizar si
Si iCount Mod 4 = 2 y iCount > 4 entonces
oCell.Range.InsertAftercWeekName(WeekDay(Date + (iCount - 1) / 4))
End If
iCount = iCount + 1
Siguiente oCell
oTable.AutoFormat Formato:=wdTableFormatColorful1, ApplyBorders:=True ApplyBorders:=True, Ap
plyFont :=True, ApplyColor: =True
@@0869601.JPG;Figura 2@@
(2) Si necesita insertar valores semanales en la segunda columna del tabla, agregue Insertar valores semanales en la estructura Para cada...Siguiente:
Si iCount Mod 4 = 2 y iCount > 4 Entonces
oCell.Range.InsertAfter cWeekName (WeekDay(Date + (iCount - 1) / 4))
End If
Entre ellos, WeekDay(Date) devuelve un valor (1 a 7), respectivamente "Domingo" a "Sábado", CWeekName La matriz debe estar predefinida como:
Dim cWeekName(7)
cWeekName(1) = "Domingo"
cWeekName( 2) = "Lunes "
p>
......
cWeekName(7) = "Sábado"
4. formatos según el contenido de la celda
Tome la tabla de ejemplo anterior como ejemplo. Si necesita cambiar el formato de todas las filas "Sábado" y "Domingo" en el formato a un fondo azul, simplemente. agregue las siguientes líneas en el programa de ejemplo anterior (el formato de la tabla se cambia a wdTableFormatColorful2, el número de fila se cambia a 12 líneas). El programa vuelve a utilizar la estructura Para cada....Siguiente para recorrer cada fila (Filas) de la tabla. Si detecta que una fila cumple la condición ("Sábado" o "Domingo"), selecciona una fila (Selección. SelectRow) y establece su atributo Cambiar al formato deseado (fondo azul en este ejemplo).
iCount = 1
Para cada fila en oTable.Range.Rows
If (WeekDay(Date + (iCount - 1)) = 7 O WeekDay( Fecha + (iCount - 1)) = 1)
Y iCount > 1
Luego
Selection.SelectRow