Créer une feuille de calcul
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Cette page explique comment créer une feuille de calcul.
Exemple
Pour créer une feuille de calcul, utilisez la méthode create sur la collection spreadsheets, comme indiqué dans l'exemple suivant.
Cet exemple crée une feuille de calcul vide avec un titre spécifié.
Travailler avec des dossiers Google Drive
L'API Sheets ne permet pas de créer une feuille de calcul directement dans un dossier Drive spécifique. Par défaut, la feuille de calcul créée est enregistrée dans le dossier racine de l'utilisateur sur Drive.
Toutefois, il existe deux alternatives pour enregistrer un fichier dans un dossier Drive :
- Une fois la feuille de calcul créée, déplacez-la dans un dossier spécifique à l'aide de la méthode files.update de l'API Drive. Pour en savoir plus sur le déplacement de fichiers, consultez Déplacer des fichiers entre des dossiers.
- Ajoutez une feuille de calcul vide à un dossier à l'aide de la méthode files.create de l'API Drive, en spécifiant
application/vnd.google-apps.spreadsheet
comme mimeType
. Pour en savoir plus sur la création de fichiers, consultez Créer un fichier dans un dossier.
Dans les deux cas, vous devrez ajouter les scopes de l'API Drive appropriés pour autoriser l'appel.
Pour déplacer ou créer un fichier dans un dossier de Drive partagé, consultez Implémenter la compatibilité avec les Drive partagés.
Pour en savoir plus sur les limites de cellules et de lignes dans Google Sheets, consultez Fichiers pouvant être stockés dans Google Drive.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/29 (UTC).
[null,null,["Dernière mise à jour le 2025/08/29 (UTC)."],[],[],null,["# Create a spreadsheet\n\nThis page describes how to create a spreadsheet.\n\nExample\n-------\n\nTo create a spreadsheet, use the [create](/workspace/sheets/api/reference/rest/v4/spreadsheets/create)\nmethod on the [spreadsheets](/workspace/sheets/api/reference/rest/v4/spreadsheets) collection, as shown in the following example.\n\nThis example creates a blank spreadsheet with a specified title. \n\n### Apps Script\n\nsheets/api/spreadsheet_snippets.gs \n[View on GitHub](https://github.com/googleworkspace/apps-script-samples/blob/main/sheets/api/spreadsheet_snippets.gs) \n\n```javascript\n/**\n * Creates a new sheet using the sheets advanced services\n * @param {string} title the name of the sheet to be created\n * @returns {string} the spreadsheet ID\n */\nSnippets.prototype.create = (title) =\u003e {\n // This code uses the Sheets Advanced Service, but for most use cases\n // the built-in method SpreadsheetApp.create() is more appropriate.\n try {\n let sheet = Sheets.newSpreadsheet();\n sheet.properties = Sheets.newSpreadsheetProperties();\n sheet.properties.title = title;\n const spreadsheet = Sheets.Spreadsheets.create(sheet);\n\n return spreadsheet.spreadsheetId;\n } catch (err) {\n // TODO (developer) - Handle exception\n console.log('Failed with error %s', err.message);\n }\n};\n```\n\n### Java\n\nsheets/snippets/src/main/java/Create.java \n[View on GitHub](https://github.com/googleworkspace/java-samples/blob/main/sheets/snippets/src/main/java/Create.java) \n\n```java\nimport com.google.api.client.http.HttpRequestInitializer;\nimport com.google.api.client.http.javanet.NetHttpTransport;\nimport com.google.api.client.json.gson.GsonFactory;\nimport com.google.api.services.sheets.v4.Sheets;\nimport com.google.api.services.sheets.v4.SheetsScopes;\nimport com.google.api.services.sheets.v4.model.Spreadsheet;\nimport com.google.api.services.sheets.v4.model.SpreadsheetProperties;\nimport com.google.auth.http.HttpCredentialsAdapter;\nimport com.google.auth.oauth2.GoogleCredentials;\nimport java.io.IOException;\nimport java.util.Collections;\n\n/* Class to demonstrate the use of Spreadsheet Create API */\npublic class Create {\n /**\n * Create a new spreadsheet.\n *\n * @param title - the name of the sheet to be created.\n * @return newly created spreadsheet id\n * @throws IOException - if credentials file not found.\n */\n public static String createSpreadsheet(String title) throws IOException {\n /* Load pre-authorized user credentials from the environment.\n TODO(developer) - See https://developers.google.com/identity for\n guides on implementing OAuth2 for your application. */\n GoogleCredentials credentials = GoogleCredentials.getApplicationDefault()\n .createScoped(Collections.singleton(SheetsScopes.SPREADSHEETS));\n HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter(\n credentials);\n\n // Create the sheets API client\n Sheets service = new Sheets.Builder(new NetHttpTransport(),\n GsonFactory.getDefaultInstance(),\n requestInitializer)\n .setApplicationName(\"Sheets samples\")\n .build();\n\n // Create new spreadsheet with a title\n Spreadsheet spreadsheet = new Spreadsheet()\n .setProperties(new SpreadsheetProperties()\n .setTitle(title));\n spreadsheet = service.spreadsheets().create(spreadsheet)\n .setFields(\"spreadsheetId\")\n .execute();\n // Prints the new spreadsheet id\n System.out.println(\"Spreadsheet ID: \" + spreadsheet.getSpreadsheetId());\n return spreadsheet.getSpreadsheetId();\n }\n}\n```\n\n### JavaScript\n\nsheets/snippets/sheets_create.js \n[View on GitHub](https://github.com/googleworkspace/browser-samples/blob/main/sheets/snippets/sheets_create.js) \n\n```javascript\nfunction create(title, callback) {\n try {\n gapi.client.sheets.spreadsheets.create({\n properties: {\n title: title,\n },\n }).then((response) =\u003e {\n if (callback) callback(response);\n console.log('Spreadsheet ID: ' + response.result.spreadsheetId);\n });\n } catch (err) {\n document.getElementById('content').innerText = err.message;\n return;\n }\n}\n```\n\n### Node.js\n\nsheets/snippets/sheets_create.js \n[View on GitHub](https://github.com/googleworkspace/node-samples/blob/main/sheets/snippets/sheets_create.js) \n\n```javascript\n/**\n * Create a google spreadsheet\n * @param {string} title Spreadsheets title\n * @return {string} Created spreadsheets ID\n */\nasync function create(title) {\n const {GoogleAuth} = require('google-auth-library');\n const {google} = require('googleapis');\n\n const auth = new GoogleAuth({\n scopes: 'https://www.googleapis.com/auth/spreadsheets',\n });\n\n const service = google.sheets({version: 'v4', auth});\n const resource = {\n properties: {\n title,\n },\n };\n try {\n const spreadsheet = await service.spreadsheets.create({\n resource,\n fields: 'spreadsheetId',\n });\n console.log(`Spreadsheet ID: ${spreadsheet.data.spreadsheetId}`);\n return spreadsheet.data.spreadsheetId;\n } catch (err) {\n // TODO (developer) - Handle exception\n throw err;\n }\n}\n```\n\n### PHP\n\nsheets/snippets/src/SpreadsheetCreate.php \n[View on GitHub](https://github.com/googleworkspace/php-samples/blob/main/sheets/snippets/src/SpreadsheetCreate.php) \n\n```php\n\u003c?php\nuse Google\\Client;\nuse Google\\Service\\Drive;\nuse Google\\Service\\Sheets\\SpreadSheet;\n\n/**\n* create an empty spreadsheet\n* \n*/\n\n function create($title)\n { \n /* Load pre-authorized user credentials from the environment.\n TODO(developer) - See https://developers.google.com/identity for\n guides on implementing OAuth2 for your application. */\n $client = new Google\\Client();\n $client-\u003euseApplicationDefaultCredentials();\n $client-\u003eaddScope(Google\\Service\\Drive::DRIVE);\n $service = new Google_Service_Sheets($client);\n try{\n\n $spreadsheet = new Google_Service_Sheets_Spreadsheet([\n 'properties' =\u003e [\n 'title' =\u003e $title\n ]\n ]);\n $spreadsheet = $service-\u003espreadsheets-\u003ecreate($spreadsheet, [\n 'fields' =\u003e 'spreadsheetId'\n ]);\n printf(\"Spreadsheet ID: %s\\n\", $spreadsheet-\u003espreadsheetId);\n return $spreadsheet-\u003espreadsheetId;\n }\n catch(Exception $e) {\n // TODO(developer) - handle error appropriately\n echo 'Message: ' .$e-\u003egetMessage();\n }\n }\n```\n\n### Python\n\nsheets/snippets/sheets_create.py \n[View on GitHub](https://github.com/googleworkspace/python-samples/blob/main/sheets/snippets/sheets_create.py) \n\n```python\nimport google.auth\nfrom googleapiclient.discovery import build\nfrom googleapiclient.errors import HttpError\n\n\ndef create(title):\n \"\"\"\n Creates the Sheet the user has access to.\n Load pre-authorized user credentials from the environment.\n TODO(developer) - See https://developers.google.com/identity\n for guides on implementing OAuth2 for the application.\n \"\"\"\n creds, _ = google.auth.default()\n # pylint: disable=maybe-no-member\n try:\n service = build(\"sheets\", \"v4\", credentials=creds)\n spreadsheet = {\"properties\": {\"title\": title}}\n spreadsheet = (\n service.spreadsheets()\n .create(body=spreadsheet, fields=\"spreadsheetId\")\n .execute()\n )\n print(f\"Spreadsheet ID: {(spreadsheet.get('spreadsheetId'))}\")\n return spreadsheet.get(\"spreadsheetId\")\n except HttpError as error:\n print(f\"An error occurred: {error}\")\n return error\n\n\nif __name__ == \"__main__\":\n # Pass: title\n create(\"mysheet1\")\n```\n\n### Ruby\n\nsheets/snippets/lib/spreadsheet_snippets.rb \n[View on GitHub](https://github.com/googleworkspace/ruby-samples/blob/main/sheets/snippets/lib/spreadsheet_snippets.rb) \n\n```ruby\nspreadsheet = {\n properties: {\n title: 'Sales Report'\n }\n}\nspreadsheet = service.create_spreadsheet(spreadsheet,\n fields: 'spreadsheetId')\nputs \"Spreadsheet ID: #{spreadsheet.spreadsheet_id}\"\n```\n\n### Work with Google Drive folders\n\nThere's no option to create a spreadsheet directly within a specified Drive folder using the Sheets API. By default, the created spreadsheet is saved to the user's root folder on Drive.\n\nHowever, there are 2 alternatives to saving a file to a Drive folder:\n\n- After the spreadsheet is created, move it to a specific folder using the [files.update](/drive/api/v3/reference/files/update) method of the Drive API. For more information on moving files, refer to [Move files between folders](/drive/api/guides/folder#move_files_between_folders).\n- Add a blank spreadsheet to a folder using the [files.create](/drive/v3/reference/files/create) method of the Drive API, specifying `application/vnd.google-apps.spreadsheet` as the `mimeType`. For more information on creating files, refer to [Create a file in a folder](/drive/api/guides/folder#create_a_file_in_a_folder).\n\nFor either alternative, you'll need to add the appropriate [Drive\nAPI scopes](/drive/api/v3/reference/files/create#auth) to authorize the call.\n\nTo move or create a file within a shared drive folder, refer to [Implement shared drive support](/drive/api/guides/enable-shareddrives).\n\nTo learn more about cell and row limits in Google Sheets, see [Files you can store in Google Drive](https://support.google.com/drive/answer/37603)."]]