En mi línea de trabajo, necesito crear documentos que contengan muchas tablas.

Estas tablas deben seguir una estructura rígida, incluido el requisito de que ninguna celda puede estar vacía. (Si una celda estaría vacía de otra manera, debe contener los caracteres «N / A».)

Para ayudar a trabajar con este requisito para las tablas, creé una macro que examina la tabla por mí y agrega los caracteres N / A, cuando corresponde. Todo lo que necesito hacer es colocar el punto de inserción dentro de la tabla de destino y luego ejecutar esta macro:

Sub AddTableNA()

Dim NumRows As Integer     Dim NumCols As Integer     Dim J As Integer     Dim K As Integer     Dim ChkTxt As String

If Not Selection.Information(wdWithInTable) Then         Exit Sub     End If

NumRows = Selection.Tables(1).Rows.Count     NumCols = Selection.Tables(1).Columns.Count

'Loop to select each row in the current table     For J = 1 To NumRows         'Loop to select each cell in the current row         For K = 1 To NumCols             'Select the cell to check             Selection.Tables(1).Rows(J).Cells(K).Select             'Copy any text in the cell             ChkTxt = Selection.Text             'Strip off the last 2 characters (removes end of cell marker)

ChkTxt = Left(ChkTxt, Len(ChkTxt) - 2)

'If empty, add "n/a" text             If (ChkTxt = "") Then Selection.TypeText ("N/A")

Next K     Next J End Sub

La macro primero verifica si el punto de inserción está dentro de una tabla.

De lo contrario, se sale de la macro antes de tiempo. Si es así, las variables NumRows y NumCols se establecen en el número de filas y columnas de la tabla, respectivamente.

Luego, la macro recorre cada celda de cada fila, determinando si la celda contiene algo. Debido a la forma en que Word construye las tablas, una celda siempre contendrá algo, el marcador de fin de celda, incluso si no hay nada más en ella. La solución fue restar dos caracteres del final del texto en la celda y luego ver si quedaba algo. De lo contrario, los caracteres «N / A» se escriben en la celda.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios WordTips), he preparado una página especial que incluye información útil.

link: / wordribbon-WordTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

WordTips es su fuente de formación rentable en Microsoft Word.

(Microsoft Word es el software de procesamiento de texto más popular del mundo). Esta sugerencia (13265) se aplica a Microsoft Word 2007, 2010, 2013, 2016, 2019 y Word en Office 365. Puede encontrar una versión de esta sugerencia para interfaz de menú anterior de Word aquí:

link: / word-Putting_Something_in_Every_Cell_of_a_Table [Poner algo en cada celda de una tabla].