Dean se pregunta cómo cambiar el ancho de la columna y el alto de la fila de píxeles a pulgadas. Le gustaría crear etiquetas en Excel, y están especificadas en pulgadas.
Antes de entrar en las posibles formas de abordar este problema, hay que señalar que Excel utiliza una forma extraña de calcular la altura de la fila y el ancho de la columna. De hecho, la altura de la fila se calcula de forma totalmente diferente a la anchura de la columna.
La altura de la fila no se mide en píxeles, sino en puntos. Un píxel es una unidad de medida relativa relacionada principalmente con dispositivos de visualización como monitores e impresoras. Si algo tiene 50 píxeles de ancho, ese tamaño, por sí mismo, no significa nada sin saber cuántos píxeles es capaz de mostrar el dispositivo verticalmente.
Los puntos, sin embargo, están bien definidos: hay aproximadamente 72 puntos por pulgada, por lo que una altura de fila de 72 sería una pulgada de alto. Simple, ¿verdad?
Ahora considere el ancho de la columna, que no se especifica ni por píxeles ni por puntos. En su lugar, se especifica en anchos de caracteres de cualquier tipo de letra que esté utilizando. Por ejemplo, si su estilo Estándar está configurado como Courier 10, entonces un ancho de columna de 12 significa que puede caber exactamente 12 caracteres en una columna dada. Cambie el tipo de letra utilizado, y de repente, el ancho de su columna cambiará también, de modo que todavía puede mostrar 12 caracteres.
Sí, ese enfoque es realmente tonto. También hace muy difícil hacer algo como diseñar etiquetas en Excel. Puede que consigas diseñar algo que funcione en tu sistema (después de una buena cantidad de pruebas y errores), pero si luego envías el libro de trabajo a un amigo, es muy probable que no funcione en su sistema. ¿Por qué? Porque la forma en que un tipo de letra se muestra en su sistema puede diferir completamente de la que se muestra en el tuyo.
La mejor manera de tratar con las etiquetas, honestamente, es hacerlas en Word. Usted puede mantener sus datos de la etiqueta en una hoja de cálculo de Excel, pero el uso de combinación de correspondencia en Word para crear las etiquetas reales. Las herramientas proporcionadas para las etiquetas son mucho más fáciles y mucho más precisas que lo que puede hacer en Excel.
Si es absolutamente necesario hacerlo en Excel, entonces debe cambiar a la vista de Diseño de página. (Despliegue la pestaña Vista de la cinta de opciones y haga clic en la herramienta Diseño de página en el grupo Vistas del libro de trabajo). Esto muestra reglas horizontales y verticales en la pantalla que puede utilizar como guía para ayudar a establecer la altura de las filas y el ancho de las columnas.
Hay otro efecto secundario interesante de trabajar en la vista Diseño de página: Si despliega la pestaña Inicio de la cinta de opciones y utiliza los comandos para establecer el alto de fila y el ancho de columna (desde la herramienta Formato), observará que ambos se especifican en pulgadas. Sólo vuelven a la absurda anchura de columna del recuento de caracteres si vuelves a la vista Normal.
Si prefieres establecer la altura y la anchura mediante el uso de una macro, puede que encuentres instructiva la macro WidthHeightInches.
Sub WidthHeightInches() Dim Temp As String Dim RInch As Single Dim CInch As Single Dim WPChar As Double Dim c As Range Dim r As Range Temp = InputBox("Row height in inches?") RInch = Val(Temp) If RInch > 0 And RInch <= 2 Then Temp = InputBox("Column width in inches?") CInch = Val(Temp) If CInch > 0 And CInch <= 3 Then For Each c In ActiveWindow.RangeSelection.Columns WPChar = c.Width / c.ColumnWidth c.ColumnWidth = ((CInch * 72) / WPChar) Next c For Each r In ActiveWindow.RangeSelection.Rows r.RowHeight = (RInch * 72) Next r End If End IfEnd Sub
Recuerda que la anchura de las columnas se especifica por el número de dígitos que pueden caber horizontalmente en una celda. El corazón de esta macro calcula el ancho de un solo dígito, en puntos. Lo hace dividiendo el ancho de la columna en puntos (la propiedad .Width) por el ancho de la columna en caracteres (la propiedad .ColumnWidth). Este valor se utiliza entonces para calcular cuántos caracteres de ancho debe tener la columna para tener el ancho deseado.