Ignorer les cellules vides dans Google Sheets pour le script de texte avec lien hypertexte

Brian

J'ai un script que j'ai créé dans Google Apps Script qui envoie un message détendu à un utilisateur avec certains ID sur une liste dans une feuille Google avec un lien hypertexte. La liste de chaque utilisateur ne contient pas le même nombre d'ID, ce qui entraîne l'apparition de l'URL du lien hypertexte pour les cellules vides dans le message de relâche. Est-il possible d'ignorer ou de masquer l'URL du lien hypertexte pour les cellules vides pour chaque utilisateur. Toutes mes excuses si ce n'est pas clair. Veuillez voir le script de charge utile ci-dessous:

// custom slack webhook
   var url = "https://hooks.slack.com/services/XXXXXSBGW/XXXXXXU1K/XXXXXXXXn9jfZXAAAAAA";
  
  var payload = {
 "channel": "@"+city[2],
 "username": "Alerts",
 "text": "Hi " + city[0] + "\n"+
    "\n Here are your most pending kits for review.\n" + 
    "\n <https://google.com/maps/'"+"|"+city[5]+">" +   
    "\n <https://google.com/maps/'"+"|"+city[6]+">" + 
    "\n <https://google.com/maps/'"+"|"+city[7]+">" + 
    "\n <https://google.com/maps/'"+"|"+city[8]+">" +
    "\n <https://google.com/maps/'"+"|"+city[9]+">" + 
    "\n Please review these kits as soon as possible.\n" 
  };

Hyperliens génériques fournis, mais les colonnes 7 à 9 de la feuille de calcul Ville sont parfois vides. Est-il possible de sauter ces cellules si elles sont vides ou du moins ne pas faire apparaître l'URL? Lorsque les cellules sont vides, l'URL du lien hypertexte est généralement affichée dans le message Slack. Toute orientation serait très appréciée.

Diego

Vous devez vérifier chacune de ces valeurs pour voir si elles sont renseignées et ensuite seulement les ajouter au message. Vous pouvez le faire de plusieurs manières, mais la plus simple est peut-être de parcourir les valeurs, de créer un tableau, puis de rejoindre le tableau.

// Example city array
var city = ["name", 1, 2, 3, 4, "city1", "city2", "", "city3"];

// Compile links
var linkStartIndex = 5;
var linkEndIndex = 9;
var links = [];
for (var i = linkStartIndex; i <= linkEndIndex; i++) {
  var value = city[i]
  if (value != null && value != "") {
    links.push("\n <https://google.com/maps/'"+"|"+value+">");
  }
}

// Compile full text
var text = [
  "Hi " + city[0] + "\n",
  "\n Here are your most pending kits for review.\n",
  links.join(""),
  "\n Please review these kits as soon as possible.\n"
];
var joined = text.join("");

console.log(joined);

Vous pourriez potentiellement rendre cela un peu plus clair en utilisant map () , mais tout dépend vraiment de la façon dont vos données sont structurées. Personnellement, je n'aime pas avoir un nombre variable de colonnes car elles ne se convertissent pas aussi parfaitement en tableaux que les lignes variables. Je préfère également travailler avec des objets lorsque cela est possible. Considérez comment la génération de cet objet à partir de votre citytableau peut rendre votre code plus facile à comprendre:

var record = {
  name: 'Brian',
  slackId: '123',
  cities: [
    'New York',
    'London'
  ]
};

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Ignorer les cellules vides jusqu'à ce que la valeur ajoutée dans Google Sheets

Insérer du texte avec un lien hypertexte dans Gmail avec Google Script?

Vérification de la page Google Sheets pour le contenu en double dans les cellules

Utilisation de regex pour extraire le texte du lien hypertexte de la chaîne Python

Fonction QUERY n'incluant pas les cellules de texte avec les cellules numériques dans le résultat

Création d'une nouvelle colonne dans le bloc de données avec condition sur les cellules non vides

Google App Script: supprimez les lignes vides de la sélection de plage pour le tri

Supprimer les lignes vides dans Google Sheets

Alias de lien hypertexte dans le message de confirmation

ReactJS - Comment ignorer les lignes vides dans Excel lors de la lecture avec xlsx

comment compter les lignes avec des cellules vides dans datagridview

Dans Excel, créez un lien hypertexte avec le symbole de «dossier» Unicode à l'aide de VBA

Mise en forme conditionnelle dans Google Sheets pour les cellules se terminant par un certain nombre

Google Sheets puis-je utiliser un lien hypertexte pour passer d'une cellule à une autre et copier des données dans l'autre cellule

Lien hypertexte dans le document R

Remplacer le texte dans Google Sheet sans reformater les valeurs à l'aide de Google App Script

Comment puis-je placer un lien hypertexte texte dans une balise div cliquable de sorte que seul le lien hypertexte soit déclenché lorsque l'utilisateur clique dessus

Comment utiliser dans Google Sheets setValue uniquement pour la plage de lignes filtrées (getRange pour les cellules non masquées)?

attribut de modèle de lien hypertexte

Supprimer ou ignorer les cellules vides renvoyées par .getRange ()

Changer le texte au survol de la souris sur un lien hypertexte

Comment omettre / ignorer / ignorer les littéraux d'objets vides dans le JSON produit?

Comment filtrer les cellules vides à l'aide d'ARRAYFORMULA (Google Sheets)

Google Apps Script Q - Dans Sheets, est-il possible de définirFormule (SUM) où les cellules à additionner changent en fonction de la ligne?

Comment faire correspondre des fichiers dans Google Drive avec un script et remplir chaque ligne dans Sheets avec un lien?

Masquer une ligne avec du texte (modifier le code) - Script Google Apps / Google Sheets

Dans Google Sheets, je souhaite remplir les cellules de la colonne A avec certaines conditions, en fonction du contenu de la colonne B

comment créer un lien hypertexte pour lancer le courrier sur QTextEdit dans pyqt

Problèmes avec le lien hypertexte dans la ligne du tableau

TOP Lista

CalienteEtiquetas

Archivo