Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problemilla formato añadir columna a tabla VBA Word

Estas en el tema de Problemilla formato añadir columna a tabla VBA Word en el foro de Visual Basic clásico en Foros del Web. Estoy trabajando con VBA en Word y lo que quiero conseguir es lo siguiente: Dada una tabla, añadir una columna sin que "copie" el formato ...
  #1 (permalink)  
Antiguo 07/11/2009, 05:32
MIRL27
Invitado
 
Mensajes: n/a
Puntos:
Problemilla formato añadir columna a tabla VBA Word

Estoy trabajando con VBA en Word y lo que quiero conseguir es lo siguiente:

Dada una tabla, añadir una columna sin que "copie" el formato de color de fondo de la anterior (o ningún formato de la anterior)

El código podría ser como sigue:
Código:
Sub pintaTabla()
    'crea la tabla
    Dim r As Range
    Set r = ActiveDocument.Range(Start:=ActiveDocument.Range.End - 1, End:=ActiveDocument.Range.End)
    ActiveDocument.Tables.Add Range:=r, numrows:=6, numcolumns:=7, _
                                  AutoFitBehavior:=wdAutoFitFixed
    ActiveDocument.Tables.Item(1).Columns.Width = CentimetersToPoints(0.8)
    
    
    With ActiveDocument.Tables.Item(1)
        'pinta el contenido
        For i = 1 To .Rows.Count
            For j = 1 To .Columns.Count
                .Cell(i, j).Range.Text = j + i
                If j = 6 Or j = 7 Then
                    .Cell(i, j).Shading.BackgroundPatternColor = wdColorGray10
                End If
            Next
        Next
        
        'agrega una columna
        .Columns.Add
        
    End With
    
End Sub
Y el resultado que da es este:



Y así es como me gustaría que saliese:




Un saludo y gracias

Edit: Me gustaría hacerlo, si fuera posible, sin tener que poner en blanco el fondo de las columnas que no son grises, no sé si me explico, ya que esa solución me parece una chapuza y mi intención es aprender variables/funciones de VBA que me faciliten la vida... y leñe!, debe haber algo! :P
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:46.