Crie uma macro do ONLYOFFICE que exclua comentários específicos do documento

17 janeiro 2024By Klaibson

Às vezes, você só precisa se livrar dos comentários no seu documento. Nesta postagem do blog, mostraremos como criar uma macro simples para ONLYOFFICE que limpa comentários específicos ou todos os comentários, mantendo sua colaboração focada e organizada.

Crie uma macro do ONLYOFFICE que exclua comentários específicos do documento

Construindo a macro

var oDocument = Api.GetDocument();

Começando, obtemos o documento de trabalho atual na variável oDocument.

var aComments = oDocument.GetAllComments();
var enteredText = "THE COMMENT YOU WANT TO DELETE";

A seguir, obtemos todos os comentários na macro usando o método GetAllComments() e definimos o comentário que queremos pesquisar. Se quiser excluir todos os comentários do documento, você pode pular esta etapa e seguir as etapas abaixo.

  for (let i = 0; i < aComments.length; i++) {
    var sQuoteText = aComments[i].GetText();

A seguir, configuramos o loop for que itera pelo array aComments e obtém o texto do comentário para cada iteração em sQuoteText.

  //aComments[i].Delete();     Uncomment if you want to delete every comment in the document

Se quiser excluir todos os comentários do documento, você pode descomentar esta linha e executar a macro.

    if (sQuoteText === enteredText) {
      aComments[i].Delete();
    }
  }

Por fim, verificamos se a palavra inserida (enteredText) corresponde ao texto do comentário. Nesse caso, excluímos o comentário dessa palavra com o método delete().

Todo o código da macro

Aqui está o código para toda a macro.

(function () {
  //get the active sheets and comments
  var oDocument = Api.GetDocument();
  var aComments = oDocument.GetAllComments();

  var enteredText = "THE COMMENT YOU WANT TO DELETE"; //place your comment here

  //for loop to iterate through all the comments
  for (let i = 0; i < aComments.length; i++) {
    var sQuoteText = aComments[i].GetText();
    //aComments[i].Delete();     Uncomment if you want to delete every comment in the document

    //this if statement deletes all instances of the specified comment from the doc
    if (sQuoteText === enteredText) {
      aComments[i].Delete();
    }
  }
})();

Agora vamos executar nossa macro e vê-la em ação!

Excluindo todos os comentários:

Excluindo comentários específicos:

E isso encerra nosso tutorial de macro fácil. Temos certeza de que esta pequena ferramenta tornará a edição de documentos mais fácil, economizando tempo e aumentando a colaboração. Boa edição!

Não perca a chance de aproveitar o poder da API ONLYOFFICE. Nossa extensa biblioteca de métodos API é a chave para transformar suas ideias em realidade. Se você tiver alguma dúvida ou conceitos inovadores, encorajamos você a compartilhe conosco. Sua contribuição é altamente valorizada e estamos entusiasmados com a possibilidade de colaborar com você. Boa sorte em seus empreendimentos exploratórios!