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:
Y el resultado que da es este: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 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