Java — Вставка, редактирование или удаление комментариев в Excel

Комментарий в Excel — это заметка, которую можно вставить в любую ячейку. Он может быть использован для различных целей, например, для объяснения формулы, предложения или примечания для других. После того как комментарий вставлен, пользователи могут редактировать или удалять его в соответствии со своими требованиями. В этой статье я покажу, как программно вставлять, редактировать или удалять комментарии в Excel на Java с помощью Free Spire.XLS for Java API.

  • Вставка комментариев в Excel
  • Редактировать комментарии в Excel
  • Удалить комментарии в Excel

Добавление зависимостей

Способ 1: Если вы используете maven, вы можете легко импортировать JAR-файл Free Spire.XLS for Java API в ваше приложение, добавив следующий код в файл pom.xml вашего проекта.

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>
Вход в полноэкранный режим Выйти из полноэкранного режима

Метод 2: Если вы не используете maven, вы можете скачать Free Spire.XLS for Java с официального сайта, распаковать zip-файл, затем импортировать файл Spire.Xls.jar из папки lib в ваш проект в качестве зависимости.

Вставка комментариев в Excel с помощью Java

Бесплатный Spire.XLS for Java предоставляет метод Worksheet.getCellRange(«rangeName»).addComment() для добавления комментария к определенной ячейке. После добавления комментария вы можете задать текст, форматирование комментария или заполнить комментарий изображением, используя методы, предоставляемые классом ExcelComment.

В следующем примере показано, как добавить обычный текстовый комментарий, добавить комментарий с форматированием и добавить комментарий с изображением на Java с помощью Free Spire.XLS for Java:

import com.spire.xls.*;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class AddPlainTextComment {
    public static void main(String[] args) throws IOException {
        //Create a Workbook instance
        Workbook workbook = new Workbook();
        //Load an Excel file
        workbook.loadFromFile("Test.xlsx");

        //Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Add a comment to cell C6
        ExcelComment textComment = sheet.getCellRange("B6").addComment();
        //Set comment text
        textComment.setText("Also known as the panda bear or simply the panda.");
        //Set comment location
        textComment.setCommentLocation(true, false);
        //Show the comment
        textComment.setVisible(true);

        //Create a font
        ExcelFont font = workbook.createFont();
        font.setFontName("Calibri");
        font.setSize(12);
        font.setColor(Color.orange);
        font.isBold(true);
        //Add a comment to cell F6
        ExcelComment richTextComment = sheet.getCellRange("F6").addComment();
        //Set the height and width for the comment
        richTextComment.setHeight(100);
        richTextComment.setWidth(200);
        //Set comment text
        richTextComment.getRichText().setText("The giant panda is a bear species endemic to China.");
        //Set comment font
        richTextComment.getRichText().setFont(0, 50, font);
        richTextComment.setTextRotation(TextRotationType.LeftToRight);
        //Set the alignment for the comment text
        richTextComment.setVAlignment(CommentVAlignType.Center);
        richTextComment.setHAlignment(CommentHAlignType.Justified);
        //Set comment location
        richTextComment.setCommentLocation(true, false);
        //Show the comment
        richTextComment.setVisible(true);

        //Add a comment to cell B12
        ExcelComment imageComment = sheet.getCellRange("B12").addComment();
        //Load an image
        BufferedImage bufferedImage = ImageIO.read(new File("Panda.jpg"));
        //Use the image to fill the comment
        imageComment.getFill().customPicture(bufferedImage, "Panda.jpg");
        //Set the height and width for the comment
        imageComment.setHeight(bufferedImage.getHeight()/4);
        imageComment.setWidth(bufferedImage.getWidth()/4);
        //Set comment location
        imageComment.setCommentLocation(true, false);
        //Show the comment
        imageComment.setVisible(true);

        //Save the result file
        workbook.saveToFile("AddComments.xlsx", ExcelVersion.Version2016);
    }
}
Вход в полноэкранный режим Выход из полноэкранного режима

Редактирование комментариев в Excel с помощью Java

Если вы хотите отредактировать комментарий определенной ячейки, вы можете использовать метод Worksheet.getCellRange(«rangeName»).getComment(), чтобы получить комментарий ячейки, а затем отредактировать текст, высоту, ширину или другие свойства комментария с помощью методов класса ExcelComment.

В следующем примере показано, как редактировать комментарии определенных ячеек в рабочем листе Excel:

import com.spire.xls.ExcelComment;
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class EditComment {
    public static void main(String[] args){
        //Create a Workbook instance
        Workbook workbook = new Workbook();

        //Load an Excel file
        workbook.loadFromFile("AddComments.xlsx");

        //Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Get the comment of cell B6
        ExcelComment comment1 = sheet.getCellRange("B6").getComment();
        //Change the comment text
        comment1.setText("I have never seen a panda in the wild.");
        //Change the height and width of the comment
        comment1.setHeight(100);
        comment1.setWidth(150);
        comment1.setVisible(true);

        //Get the comment of cell F6
        ExcelComment comment2 = sheet.getCellRange("F6").getComment();
        //Change the size of the comment
        comment2.setAutoSize(true);

        //Save the result file
        workbook.saveToFile("EditComments.xlsx", ExcelVersion.Version2013);
    }
}
Войти в полноэкранный режим Выход из полноэкранного режима

Удаление комментариев в Excel с помощью Java

Вы можете удалить комментарий из определенной ячейки с помощью метода Worksheet.getCellRange(«rangeName»).getComment().remove() или удалить все комментарии из определенного рабочего листа с помощью метода Worksheet.getComments().Clear().

В следующем примере показано, как удалить все комментарии с рабочего листа Excel:

import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class DeleteComment {
    public static void main(String[] args){
        //Create a Workbook instance
        Workbook workbook = new Workbook();
        //Load an Excel file
        workbook.loadFromFile("AddComments.xlsx");

        //Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Delete the comment from cell F6
        //sheet.getCellRange("F6").getComment().remove();

        //Delete all the comments from the worksheet
        sheet.getComments().clear();

        //Save the result file
        workbook.saveToFile("DeleteComments.xlsx", ExcelVersion.Version2013);
    }
}
Войти в полноэкранный режим Выход из полноэкранного режима

Оцените статью
devanswers.ru
Добавить комментарий