Trabajar con comentarios

Trabajar con comentarios

Aspose.Cells FOSS for Java lets you add, read, modify, and remove cell comentarios (notes) en los libros de trabajo XLSX. Los comentarios se acceden a través del CommentCollection en un taller y se representan como Comment Objetos que lleva el texto de la nota, nombre del autor y dimensiones de muestra.


Visión general

Cada hoja de trabajo exponer sus comentarios a través de Worksheet.getComments(),que, que Volver a CommentCollection.Puedes agregar un comentario por dirección celular o por índice de línea/columna, recibe los comentarios existentes por índices o nombre de células; y Removemos cuando ya no es necesario.

A Comment El texto de la nota (getNote()/setNote()El autor, el (getAuthor()/setAuthor()La posición de la ancha (getRow(), getColumn()y las dimensiones de su imagen (getWidth(), getHeight()y) y ¿Es posible que se vea por defecto (isVisible()/setVisible()).


Acceso a comentarios en una hoja de trabajo

Recuperar el CommentCollection de cualquier Worksheet por vía Worksheet.getComments().Uso de CommentCollection.getCount() Para determinar cuántos comentarios están presentes.Los comentarios individuales son accesibles por Indice basado en cero CommentCollection.get(index) o por nombre de célula A través de CommentCollection.get(cellName).


Añadiendo un comentario

Uso CommentCollection.add(cellName) o CommentCollection.add(row, column) Para escribir un comentario.Todos los dos sobrecargar Volver a Comment -Sit el texto y autor de la nota en el reenviado. Previo antes de ahorrar.

// Add a comment to cell B2 and configure it
Comment comment = ws.getComments().add("B2");
comment.setNote("Review this value before submission.");
comment.setAuthor("Analyst");
comment.setVisible(false);
comment.setWidth(180);
comment.setHeight(60);

Leer Comentarios Contenido

Toma todos los comentarios utilizando el cuadro:

CommentCollection comments = ws.getComments();
for (int i = 0; i < comments.getCount(); i++) {
    Comment c = comments.get(i);
    System.out.printf("Cell [%d,%d] author=%s note=%s%n",
        c.getRow(), c.getColumn(), c.getAuthor(), c.getNote());
}

Modificar un comentario existente

Retirar el comentario por dirección celular y actualizar sus campos directamente:

Comment c = ws.getComments().get("B2");
if (c != null) {
    c.setNote("Updated note text.");
    c.setVisible(true);
}

Remover un comentario

Uso CommentCollection.removeAt(index) o CommentCollection.removeAt(cellName) Para eliminar un comentario:

ws.getComments().removeAt("B2");

Consejos y mejores prácticas

  • Siempre ver que CommentCollection.get(cellName) No vuelve null antes de modificar un comentario, la célula puede no tener ningún comentário anexado.
  • Sitio Comment.setVisible(false) para las anotaciones que sólo deberían aparecer en el Hover, que corresponde al comportamiento estándar de Excel.
  • Uso Comment.setWidth() y Comment.setHeight() (en píxeles) para garantizar que La caja de nota es lo suficientemente grande para el texto multi-line.
  • Los nombres de autor se almacenan como líneas plazas; no están validados contra la lista de usuarios del libro de trabajo.
  • Comentarios sobrevivir a una carga/salva redondear a través de XLSX cuando no hay modificaciones Se hacen para CommentCollection.

Problemas comunes

ProblemasCausasFixado
get(cellName) Retorno nullNo hay comentarios en esa direcciónVerificar la dirección de la célula o iterar por índice
La nota de comentarios es vacía después de salvarsetNote() No se llama antes de salvarllamadas setNote() En el regreso Comment Antes de salvar el libro de trabajo
Comentarios no visibles en ExcelsetVisible(false) Se establecióCambio a setVisible(true) o sobre la célula en Excel

FAQ

¿Cómo puedo agregar un comentario a una línea y columna específica?

Uso CommentCollection.add(row, column),donde ambos valores son basados en cero. de la misma. es equivalente a add(cellName) con la célula correspondiente dirección .

¿Puedo cambiar el autor de un comentario existente?

Sí, retire el Comment por vía get(cellName) y llamar setAuthor(name) con el nuevo autor de la serie.

¿Cómo puedo comprobar si un comentario está visible?

llamadas Comment.isVisible().de vuelta true Si la caja de comentarios siempre es que se muestra; false Si sólo aparece en la cuna.

¿Se conservan los comentarios cuando se conforman a otros formatos?

Los comentarios se conservan en el XLSX round-trip. El comportamiento de conservación para otros formatos depende del soporte al formato en la salida objetivo.

¿Cómo puedo contar comentarios en una hoja de trabajo?

Uso Worksheet.getComments().getCount().


Sumación de referencia API

Como

MetodologíaTipo de regresoDescripción
getRow()intIndice de línea basado en cero de la célula anchor.
getColumn()intIndice de columna basado en cero de la célula ancor.
getNote()StringEl texto de comentarios.
setNote(note)voidEntra el texto de comentarios.
getAuthor()StringEl nombre del autor.
setAuthor(author)void-Consulte el nombre del autor.
isVisible()booleanSi la caja de comentarios es siempre visible.
setVisible(visible)void- Define la visibilidad de la caja de comentarios.
getWidth()intLa extensión de la caja de comentarios en píxeles.
setWidth(width)void- Define la anchura de la caja de comentarios.
getHeight()intLa altura de la caja de comentarios en píxeles.
setHeight(height)void- Define la altura de la caja de comentarios.

CommentCollection

MetodologíaTipo de regresoDescripción
getCount()intNúmero de comentarios en el taller.
get(index)CommentDevolver el comentario al índice basado en cero.
get(cellName)CommentDevolver el comentario a la dirección de la célula dada.
add(row, column)CommentAdmitir un nuevo comentario en la posición de línea/columna.
add(cellName)CommentAñade un nuevo comentario en la dirección de la célula.
removeAt(index)voidEliminar el comentario en el índice basado en cero.
removeAt(cellName)voidRemovemos el comentario en la dirección de la célula.

Ver también

 Español