Automatically translate Google Sheets to any language and download as Excel.
- ✅ Translate single sheet or all sheets at once
- ✅ Create new sheet/file to keep original data safe
- ✅ Support 100+ languages
- ✅ 100% free (uses built-in Google Translate API)
- ✅ Export results to Excel (.xlsx)
- ✅ No external API key required
Option A - Upload Excel File:
- Go to
drive.google.com - Click "+ New" → "File upload"
- Upload your Excel file
- Right-click the file → "Open with" → "Google Sheets"
- IMPORTANT: Click File → "Save as Google Sheets"
- This converts Excel to Google Sheets format
- Extensions menu will NOT appear without this step!
Option B - Create New File:
- Go to
sheets.google.com - Click "+ Blank" to create a new spreadsheet
Option C - Use Existing File:
- Go to
sheets.google.com - Click the file you want to translate
- If file is in Excel format (.xlsx), click File → "Save as Google Sheets" first
⚠️ CRITICAL: If you don't see the Extensions menu, you MUST convert the file to Google Sheets format first by clicking File → Save as Google Sheets!
- In Google Sheets, click the Extensions menu
- If you don't see Extensions menu, go to File → Save as Google Sheets first!
- Select Apps Script
- A new tab will open (Apps Script Editor)
- In Apps Script Editor, delete all default code
- Copy the script provided (see
Code.gsfile) - Paste into the editor (Ctrl+V)
- Click Save (💾 or Ctrl+S)
- Name your project:
Auto Translator
- In Apps Script Editor, make sure
onOpenfunction is selected in the dropdown (top center) - Click the Run button (
▶️ ) - An "Authorization required" dialog will appear
- Click "Review Permissions"
- Choose your Google account
- Click "Advanced" (bottom left)
- Click "Go to Auto Translator (unsafe)"
- Click "Allow"
Note: This is normal for custom scripts. Google warns you because it's not a verified app.
- Go back to Google Sheets tab
- Refresh the page (F5)
- Wait a few seconds
- The "🌐 Auto Translate" menu will appear in the toolbar (between Extensions and Help)
✅ Installation complete!
After installation, you'll see the "🌐 Auto Translate" menu with options:
- 📝 Translate This Sheet - Translate active sheet (overwrites original data)
- 📋 Translate to New Sheet - Translate active sheet to new sheet (original data safe)
- 🔄 Translate ALL Tabs - Translate all sheets (overwrites original data)
- 📑 Translate ALL Tabs to New File - Translate all sheets to new file (SAFEST ⭐)
- ⚙️ Language Settings - View language code list
- 📥 Export to Excel - Generate Excel download link
This method is safest because the original file remains unchanged!
- Click "🌐 Auto Translate" menu
- Select "📑 Translate ALL Tabs to New File"
- Enter target language code (example:
enfor English) - Click "OK"
- Wait for the process to complete (2-5 minutes depending on file size)
⚠️ DO NOT close the browser tab⚠️ DO NOT refresh the page
- A new file will automatically open in a new tab
- File name:
[Original File Name] (EN)
- In the translated file, click "File" menu
- Select "Download" → "Microsoft Excel (.xlsx)"
- File will download to your computer
✅ Done!
Perfect when you only want to translate a specific tab
- Select the tab/sheet you want to translate
- Click "🌐 Auto Translate" menu
- Select "📋 Translate to New Sheet"
- Enter language code (example:
en) - Click "OK"
- A new sheet will be created with name:
[Sheet Name]_EN - You'll be automatically switched to the translated sheet
- Select the sheet you want to translate
- Click "🌐 Auto Translate" → "📝 Translate This Sheet"
- Confirm "Yes" (data will be overwritten)
- Enter language code
- Click "OK"
- Click "🌐 Auto Translate" → "🔄 Translate ALL Tabs"
- Confirm "Yes" (data in all tabs will be overwritten)
- Enter language code
- Click "OK"
| Code | Language | Emoji |
|---|---|---|
en |
English | 🇬🇧 |
id |
Indonesian | 🇮🇩 |
ja |
Japanese | 🇯🇵 |
ko |
Korean | 🇰🇷 |
zh |
Chinese (Mandarin) | 🇨🇳 |
ar |
Arabic | 🇸🇦 |
es |
Spanish | 🇪🇸 |
fr |
French | 🇫🇷 |
de |
German | 🇩🇪 |
pt |
Portuguese | 🇵🇹 |
ru |
Russian | 🇷🇺 |
it |
Italian | 🇮🇹 |
nl |
Dutch | 🇳🇱 |
th |
Thai | 🇹🇭 |
vi |
Vietnamese | 🇻🇳 |
tl |
Tagalog | 🇵🇭 |
hi |
Hindi | 🇮🇳 |
bn |
Bengali | 🇧🇩 |
- Click "🌐 Auto Translate" menu
- Select "⚙️ Language Settings"
- A dialog will show the language code list
Or visit: https://cloud.google.com/translate/docs/languages
Cause: File is in Excel format (.xlsx), not Google Sheets format
Solution:
- Click File menu
- Select "Save as Google Sheets"
- Wait for conversion to complete
- Extensions menu will now appear
- Continue with Apps Script installation
Cause: Script hasn't been run or hasn't loaded
Solution:
- Open Extensions → Apps Script
- Select
onOpenfunction in dropdown - Click Run button (
▶️ ) - Go back to Google Sheets
- Refresh page (F5)
- Wait 10-15 seconds
Cause: Script needs permission on first run
Solution:
- Click "Review Permissions"
- Choose your Google account
- Click "Advanced"
- Click "Go to Auto Translator (unsafe)"
- Click "Allow"
This is normal for custom scripts. The script only runs in your account and doesn't share data with third parties.
Cause: Large files require more time
Solution:
- Files >1000 rows may take 5-10 minutes
- DO NOT close tab or refresh page
- Wait until "✅ Done!" notification appears
- If longer than 15 minutes, try translating per sheet
Cause:
- Cell contains numbers (no translation needed)
- Cell contains formulas (not translated)
- Cell is empty
- Temporary API connection error
Solution:
- This is normal and by design
- Formulas and numbers are not translated
- For connection errors, try running again
Solution:
- Ensure script is completely copied (not truncated)
- Open Apps Script → check for red errors
- Delete script and paste again
- Save → Run → Refresh
Before translating, make a copy of the original file:
- File → Make a copy
- Name it
BACKUP - [file name]
Before translating all tabs, test with 1 sheet to check results
Always use options that create new file/sheet to keep original data safe
For very large files (>5000 rows), translate per sheet or in batches
After translation, randomly check several rows to ensure accuracy
Ensure stable internet connection during translation process
Before using this script, please consider the following:
-
Backup Recommended
It is strongly recommended to create a backup copy of your Google Sheets data before running this script. -
Sensitive Data
If your document contains confidential or sensitive information, consider carefully before using cloud-based automation. Any security risks or data errors remain the user’s responsibility. -
Official Google Features
This script usesLanguageAppor theGOOGLETRANSLATEfunction, which are official built-in Google features.
It is not a third-party application and is not affiliated with or endorsed by Google. -
Educational & Reference Purpose
This script is provided for educational and reference purposes only.
The author is not responsible for any data loss, corruption, or errors that may occur from using this script.
This project uses Google Apps Script and Google Translate services. This project is not affiliated with or endorsed by Google. Users are responsible for complying with Google's Terms of Service.
- Initial release
- Support translate single sheet or all sheets
- Support translate to new sheet/file
- Export to Excel
- 100+ language support
Free to use. No warranty provided.
Before starting, ensure:
- File is in Google Sheets (not local Excel)
- If Excel format, converted via File → Save as Google Sheets
- Extensions menu is visible
- Script pasted in Apps Script
- Script saved
- Script Run (important!)
- Page refreshed
- "🌐 Auto Translate" menu appears
- Know target language code (e.g.,
en) - Stable internet connection
If all checkboxes ✅, you're ready to translate!
Fastest Workflow:
- Upload file to Google Sheets
- If Excel format: File → Save as Google Sheets
- Install script → Run → Refresh
- Click "Translate ALL Tabs to New File"
- Enter language code → OK
- Download result as Excel
- Done! 🚀
Made with ❤️ using Google Apps Script