Ouvrir une feuille à un endroit précis à l'ouverture

Bonsoir je viens ici pour demander comment je peux ouvrir mon projet à un endroit précis.

Attendu que je vais avoir une année complète je vais avoir beaucoup de lignes alors je souhaite pouvoir ouvrir mon fichier qlq lignes avant la fin
(et si c'est possible que je sois directement sur la case client en dessous qui est vide) comme ici sur mon printscreen

https://docs.google.com/spreadsheets/d/1-hm-UylEoJ6acX-6Dxklk6d9s8KJpzOS2AaYi2E_gPk/edit?usp=sharing

Mercii pour votre aide

00endroit

Bonjour,

mais ... il s'ouvre déjà à un endroit précis

si tu veux le changer, tu peux essayer

function onOpen() {

// ...

  var f = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  var range = f.getRange('C' + f.getLastRow());
  if (range.getValue() !== "") {
    range.offset(0,2).activate();
  } else {
    range.getNextDataCell(SpreadsheetApp.Direction.UP).offset(1,2).activate();
  }

}

Bonsoir si j'ai bien compris le script il s’enclenche avec la colonne de la date en C ?

Sauf que la problématique c'est que je mets cette date en C seulement quand je dois envoyer ma commande (+-1x/sem pour faire une commande groupée) et qu'il y aura donc plusieurs clients avant que je 1mette une date comme sur mon exemple et voici comment s'ouvre mon document quand il n'y a pas de date.

000

Y aurait il un moyen pour que le document s'ouvre comme ceci.
(Autre question le script fonctionne mais n'est pas instantané il y a certain temps de latence est ce normal ? (j'ai cela aussi sur d'autre script)

Merci pour votre aide :))

00capture

Si c'est la colonne E le critère

function onOpen() {

  // ajoute un menu
  SpreadsheetApp.getUi().createMenu('⇩ M E N U ⇩')
    .addItem('👉 Générer/Mettre à jour le fichier de lecture', 'maj')
    .addItem('👉 Envoyer les informations par email', 'sendEmail')
    .addToUi();

  // se positionne sur la dernière valeurs de la colonne E
  var f = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  var range = f.getRange('E' + f.getLastRow());
  if (range.getValue() !== "") {
    range.activate();
  } else {
    range.getNextDataCell(SpreadsheetApp.Direction.UP).offset(1,0).activate();
  }

}

ce script s'effectue côté serveur comme tous les scripts, et pas localement, donc oui il y a une latence liée à la qualité de ta connexion internet mais aussi à la complexité par ailleurs des formules de ton document, le temps que tout se mette en place à l'ouverture.

Je reviens vers vous pour ce projet ;
car j'ai transposé ce script sur mon projet orignal mais le script ne fonctionne pas tout à fait comme sur la page de calcul que je partage avec vous ...
(j'ai modifiée le projet que je partage avec vous pour qu'il ressemble plus à mon projet original).
Donc il y a une colonne en plus (que je viens d'ajouter ici aussi) j'ai essayé de chipoter un peu sur les lettres du script (lettre e et F).
Le document original ne s'ouvre plus à l'endroit voulu mais depuis que j'ai modifier le document que je partage ici lui non plus.
Il s'ouvre tout en bas de la page (cfr photo)

https://docs.google.com/spreadsheets/d/1-hm-UylEoJ6acX-6Dxklk6d9s8KJpzOS2AaYi2E_gPk/edit?usp=sharing

voila ou il s'ouvre

derniere ligne

et mon souhaite ce serait qu'il s'ouvre ainsi

souhait

Il s'ouvre tout en bas parce qu'il y a des indications plus bas dans la colonne concernée. Peux-tu les retirer ?

J'ai changé comme suit

  var g = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  g.getRange('F8').getNextDataCell(SpreadsheetApp.Direction.DOWN).offset(1,0).activate();

il se mettra au premier "trou" de la colonne F après la ligne 8

Il s'ouvre tout en bas parce qu'il y a des indications plus bas dans la colonne concernée. Peux-tu les retirer ?

Tu parles de ce que j'ai mis au dessus ? "clôture du 4e trimestre" ?
car dans la case F105 je n'ai rien comme indication ...

Génial ta dernière intervention a fonctionné :))
Tu es trop fort :))

et ... heuu ...

est ce qu'on pourrait pousser (le bouchon) le script et lui imposer un endroit encore plus précis ?

en lui demandant de laisser juste 4 clients au dessus de ligne qui est prête a être inscrite (l’encadré bleu) ? et que ça donnerait ceci (voir photo) ?
c'est possible avec un script ?

choix
supprimé

celui la ne fonctionne pas il dit qu'il mis "erreur en syntaxe 13" j'ai essayé aussi d’effacé la ligne ou tu indiqué "voir si indispensable" mais la réponse est identique

image
function onOpen() {

  // ajoute un menu
  SpreadsheetApp.getUi().createMenu('⇩ M E N U ⇩')
    .addItem('👉 Générer/Mettre à jour le fichier de lecture', 'maj')
    .addItem('👉 Envoyer les informations par email', 'sendEmail')
    .addToUi();

  // se positionne sur la dernière valeurs de la colonne
  var g = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  var range = g.getRange('F8').getNextDataCell(SpreadsheetApp.Direction.DOWN)
  g.getRange('F'+g.getLastRow()).activate();
  SpreadsheetApp.flush(); // voir si c'est indispensable
  range.offset(-3, 0).activate();
  SpreadsheetApp.flush(); // voir si c'est indispensable
  range.offset(1, 0).activate();
}

il manquait le } à la fin !

WHAAAAAA le script il est trop génial je l'adore le dernier

IL EST PARFAIT il s'ouvre pille-poil comme je le souhaitais :))))))

YOU ARE THE BEST un super mega meeerrrciiiii

Je voulais savoir si il existe un code que pour faire la même chose mais dans Excell ...

J'ai posé la question sur le forum Excell mais ça fonctionne pas je sais que certain sont sur les 2 forums

Hello,

tu veux ouvrir un fichier excel et te positionner sur la première cellule vide d'une colonne ?

Non je souhaite faire la même principe qu'ici

Que le document s'ouvre l'endroit ou je devrais remplir un pointage dans le cas de mon document Excell

donc Mon document va se compléter avec des heures je voulais qu'il s'ouvre en dessous au mardi 23 mais ce ne sera pas tjs le mardi 23 au fur et a mesure que je vais remplir mon document

Comme je suis un peu paresseuse je voulais une solution pourqu'il s'ouvre automatique à l endroit que je vais devoir remplir.

J'ai fait une demande aussi dans le forum Excel

"ouvrir Excelle a un endroit précis"

Mais je ne vais pas trop demander ici car ici c est Google Sheet... mais si tu as la solution je veux bien lol

tempsnip2

Hello,

Dans le module "Thisworkbook" :

Private Sub Workbook_Open()
    Sheets("A_definir").Range("E1").End(xlDown).Offset(1, 0).Select
End Sub

Adapter le nom de la feuille et la première cellule du tableau

Rechercher des sujets similaires à "ouvrir feuille endroit precis ouverture"