Problème Macro Gsheets
Fermé
Krys15
-
7 oct. 2020 à 10:43
Christouf1542 Messages postés 15 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 26 octobre 2020 - 7 oct. 2020 à 16:16
Christouf1542 Messages postés 15 Date d'inscription mercredi 2 janvier 2019 Statut Membre Dernière intervention 26 octobre 2020 - 7 oct. 2020 à 16:16
A voir également:
- Problème Macro Gsheets
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Macro logiciel - Télécharger - Organisation
- Macro recorder - Télécharger - Confidentialité
- Telecharger macro nblettre.xla - Forum Bureautique
2 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 778
Modifié le 7 oct. 2020 à 11:07
Modifié le 7 oct. 2020 à 11:07
Bonjour,
Est-ce qu'un voit d'où peut venir le problème ?
Excel et Google Sheets n'utilisent pas le même langage de macro donc les macros de l'un ne fonctionnent pas sur l'autre.
Il faut écrire un fichier sans macro ce qui dans ton cas à l'air possible.
Est-ce qu'un voit d'où peut venir le problème ?
Excel et Google Sheets n'utilisent pas le même langage de macro donc les macros de l'un ne fonctionnent pas sur l'autre.
Il faut écrire un fichier sans macro ce qui dans ton cas à l'air possible.
Christouf1542
Messages postés
15
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
26 octobre 2020
7 oct. 2020 à 16:16
7 oct. 2020 à 16:16
Bonjour Patrice,
merci pour votre réponse. Mais comme je le disais dans mon message, lorsque j'enregistre la macro sur Gsheets, celle-ci n'est pas fonctionnelle alors qu'elle marche très bien sur excel.
Voici le code gsheets :
Merci !!!
/** @OnlyCurrentDoc */
function Macro_Resultats_Video(){
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('I13').activate();
};
function myFunction(){
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('A2').activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Data Vidéo'), true);
spreadsheet.getRange('Q:Q').activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Détail des Résultats'), true);
spreadsheet.getRange('A1').activate();
spreadsheet.getRange('\'Data Vidéo\'!Q:Q').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
spreadsheet.getRange('A:A').activate();
spreadsheet.getActiveRange().offset(1, 0, spreadsheet.getActiveRange().getNumRows() - 1).activate();
spreadsheet.getActiveRange().removeDuplicates().activate();
spreadsheet.getRange('B2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!D:D;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Data Vidéo'), true);
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Détail des Résultats'), true);
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!G:G;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B2:B3'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('B3').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B11'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('B3:B11').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('C2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!H:H;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('C2:C39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('D2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!P:P;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('D2:D39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('H2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!K:K;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('H2:H3'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('H2:H3').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('H2:H39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('E2').activate();
spreadsheet.getCurrentCell().setFormula('=D2/B2');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('E2:E39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('E2:E39').activate();
spreadsheet.getActiveRangeList().setNumberFormat('0.00%');
spreadsheet.getRange('F2').activate();
spreadsheet.getCurrentCell().setFormula('=H2/D2');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('F2:F39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00\\ [$€-1]')
.setNumberFormat('#,##0.0\\ [$€-1]')
.setNumberFormat('#,##0.00\\ [$€-1]')
.setNumberFormat('#,##0.000\\ [$€-1]');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('F2:F39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('G2').activate();
spreadsheet.getCurrentCell().setFormula('=(H2/B2)*1000');
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00\\ [$€-1]');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('G2:G39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('A1').activate();
spreadsheet.getRange('A:H').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
spreadsheet.getRange('A:H').activate();
spreadsheet.setCurrentCell(spreadsheet.getRange('H1'));
spreadsheet.getActiveRange().removeDuplicates().activate();
};
merci pour votre réponse. Mais comme je le disais dans mon message, lorsque j'enregistre la macro sur Gsheets, celle-ci n'est pas fonctionnelle alors qu'elle marche très bien sur excel.
Voici le code gsheets :
Merci !!!
/** @OnlyCurrentDoc */
function Macro_Resultats_Video(){
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('I13').activate();
};
function myFunction(){
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('A2').activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Data Vidéo'), true);
spreadsheet.getRange('Q:Q').activate();
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Détail des Résultats'), true);
spreadsheet.getRange('A1').activate();
spreadsheet.getRange('\'Data Vidéo\'!Q:Q').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
spreadsheet.getRange('A:A').activate();
spreadsheet.getActiveRange().offset(1, 0, spreadsheet.getActiveRange().getNumRows() - 1).activate();
spreadsheet.getActiveRange().removeDuplicates().activate();
spreadsheet.getRange('B2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!D:D;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Data Vidéo'), true);
spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Détail des Résultats'), true);
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!G:G;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B2:B3'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('B3').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B11'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('B3:B11').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('B3:B39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('C2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!H:H;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('C2:C39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('D2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!P:P;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('D2:D39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('H2').activate();
spreadsheet.getCurrentCell().setFormula('=SOMME.SI.ENS(\'Data Vidéo\'!K:K;\'Data Vidéo\'!Q:Q;A2)');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('H2:H3'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('H2:H3').activate();
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('H2:H39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('E2').activate();
spreadsheet.getCurrentCell().setFormula('=D2/B2');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('E2:E39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('E2:E39').activate();
spreadsheet.getActiveRangeList().setNumberFormat('0.00%');
spreadsheet.getRange('F2').activate();
spreadsheet.getCurrentCell().setFormula('=H2/D2');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('F2:F39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00\\ [$€-1]')
.setNumberFormat('#,##0.0\\ [$€-1]')
.setNumberFormat('#,##0.00\\ [$€-1]')
.setNumberFormat('#,##0.000\\ [$€-1]');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('F2:F39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('G2').activate();
spreadsheet.getCurrentCell().setFormula('=(H2/B2)*1000');
spreadsheet.getActiveRangeList().setNumberFormat('#,##0.00\\ [$€-1]');
spreadsheet.getActiveRange().autoFill(spreadsheet.getRange('G2:G39'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);
spreadsheet.getRange('A1').activate();
spreadsheet.getRange('A:H').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
spreadsheet.getRange('A:H').activate();
spreadsheet.setCurrentCell(spreadsheet.getRange('H1'));
spreadsheet.getActiveRange().removeDuplicates().activate();
};