Arbeta med kommentarer
Arbeta med kommentarer
Aspose.Cells FOSS for Java lets you add, read, modify, and remove cell kommentarer (noter) i XLSX arbetsböcker. Kommentarer finns tillgängliga via CommentCollection på ett arbetsblad och representeras som Comment föremål som bär anteckningstexten, författarnamn och displaydimensioner.
Översikt
Varje arbetsbok visar sina kommentarer genom att Worksheet.getComments(),och vilken Återkommer A CommentCollection.Du kan lägga till en kommentar via celladress eller genom rad/kolumnindex, få befintliga kommentarer genom index eller cellnamn och Ta bort dem när de inte längre behövs.
A och Comment För att få reda på texten (getNote()/setNote()) författaren (getAuthor()/setAuthor()och dess ankor position (getRow(), getColumn()och dess utseende (getWidth(), getHeight()) och Om det är synligt (isVisible()/setVisible()).
Tillgång till kommentarer på en arbetsbok
återställer den CommentCollection Från någon Worksheet via Worksheet.getComments().Användning CommentCollection.getCount() att bestämma hur många kommentarer finns. individuella kommentarer är tillgängliga genom att Nollbaserad index genom CommentCollection.get(index) eller genom cellnamn genom CommentCollection.get(cellName).
Lägg till en kommentar
Användning CommentCollection.add(cellName) eller CommentCollection.add(row, column) att skriva in en ny kommentar. båda överlämnar Återgå till A Comment objekt. Ställ anteckningstexten och författaren på den returnerade Exempel före sparande.
// 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);Läs kommentar innehåll
Se alla kommentarer med hjälp av räkningen:
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());
}Ändra en befintlig kommentar
Reträda kommentaren genom celladress och uppdatera fälten direkt:
Comment c = ws.getComments().get("B2");
if (c != null) {
c.setNote("Updated note text.");
c.setVisible(true);
}Ta bort en kommentar
Användning CommentCollection.removeAt(index) eller CommentCollection.removeAt(cellName) För att radera en kommentar:
ws.getComments().removeAt("B2");Tips och bästa praxis
- Kontrollera alltid det
CommentCollection.get(cellName)inte återvändanullinnan du ändrar en kommentar – cellen kan inte ha några kommentarer bifogade. - Setade
Comment.setVisible(false)för anmälningar som endast ska visas på hover, som matchar standard Excel beteende. - Användning
Comment.setWidth()ochComment.setHeight()(i pixlar) för att säkerställa Notfönstret är tillräckligt stort för flerlinjetext. - Författarnamn lagras som platt strängar; de valideras inte mot arbetsbokens användarlista.
- Kommentarer överleva en laddning/spara rundtur genom XLSX när inga ändringar De är gjorda för
CommentCollection.
Vanliga frågor
| Issue | Cause | Fixar |
|---|---|---|
get(cellName) återvänder null | Inga kommentarer till den adressen | Kontrollera celladressen eller iterera efter index |
| Kommentar notera är tom efter spara | setNote() Inte ringde innan du räddade | Call setNote() På den återvända Comment Innan du sparar arbetsboken |
| Kommentar inte synlig i Excel | setVisible(false) Det har satt | Ändra till setVisible(true) eller hover över cellen i Excel |
FAQ
Hur lägger jag till en kommentar i en viss rad och kolumn?
Användning CommentCollection.add(row, column),där båda värdena är nollbaserade index. detta motsvarar add(cellName) med motsvarande celler adressen .
Kan jag ändra författaren till en befintlig kommentar?
Ja, återställ den Comment via get(cellName) och ringer setAuthor(name) med den nya författaren sträng.
Hur kan jag kontrollera om en kommentar är synlig för närvarande?
Call Comment.isVisible().Återvändning true Om kommentarsfältet alltid är visar sig; false Om det bara visas på hover.
Är kommentarer bevarade när du konverterar till andra format?
Kommentarer bevaras på XLSX rundtur. Bevarandebehandlingen för andra format beror på formatsstöd i målresultatet.
Hur räknar jag kommentarer på ett arbetsblad?
Användning Worksheet.getComments().getCount().
API Referens sammanfattning
Comment
| Method | Tillbaka typ | Beskrivning |
|---|---|---|
getRow() | int | Nollbaserad radindex för anchorcellen. |
getColumn() | int | Nollbaserad kolumnindex för anchorcellen. |
getNote() | String | Kommentar i texten. |
setNote(note) | void | Skriv in kommentartexten. |
getAuthor() | String | Författarens namn. |
setAuthor(author) | void | Ange författarens namn. |
isVisible() | boolean | Om kommentarsfältet alltid är synligt. |
setVisible(visible) | void | Ställ in synligheten i kommentarfältet. |
getWidth() | int | Brevhet i kommentarfältet i pixlar. |
setWidth(width) | void | Ange bredden i kommentarfältet. |
getHeight() | int | Höjd på kommentarfönstret i pixlar. |
setHeight(height) | void | Ange höjden på kommentarfönstret. |
CommentCollection
| Method | Tillbaka typ | Beskrivning |
|---|---|---|
getCount() | int | Antal kommentarer på arbetsboken. |
get(index) | Comment | Returnerar kommentaren till nollbaserad index. |
get(cellName) | Comment | Returnerar kommentaren till den angivna cellen. |
add(row, column) | Comment | Lägg till en ny kommentar i rad/kolumnpositionen. |
add(cellName) | Comment | Lägg till en ny kommentar i celladressen. |
removeAt(index) | void | Ta bort kommentaren på nollbaserad index. |
removeAt(cellName) | void | Ta bort kommentaren på cellen adress. |