Every 5 minutes
Convert Word files uploaded to Google Drive into Google Docs
Word, Excel and PowerPoint files dropped in a Drive folder are converted to Google Docs, Sheets or Slides every 5 minutes, and the originals move to an archive folder.
- Runs
- Every 5 minutes
- Apps
- Google Drive
- AI
- Not needed
- Access
- drive
Send this to your assistant
Create a ClickRuntime automation: every 5 minutes, convert any .docx, .xlsx or .pptx file in my Drive folder "Inbox" into Google Docs, Sheets or Slides in the same folder and move the original into "Inbox/Originals".
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Clients and suppliers still send Word and Excel files, and teams that work in Google Workspace end up with folders full of attachments that open in a preview window instead of an editor. Converting each one is three clicks that people forget to do.
This automation watches one folder. Every 5 minutes it converts any Word, Excel or PowerPoint file it finds into the matching Google format, places the copy beside it, and moves the original into an Originals subfolder.
Agencies receiving client briefs, finance teams receiving supplier spreadsheets and anyone moving from Office to Google Workspace use it so every file in the shared folder can be edited and commented on straight away.
What you get out of it
Editable right away
Files become real Google Docs, Sheets and Slides, so people can comment and edit together.
Originals kept
The Office file is moved, not deleted, in case a layout needs checking against the source.
No double conversions
Once moved to the archive folder, a file is not picked up again.
Clean names
The converted file drops the .docx or .xlsx ending, so it reads like any other Google file.
Google's own converter
The conversion is the same one Drive uses when you open a file with Google Docs.
How it works
What happens, step by step
Every 5 minutes the automation looks for Word, Excel and PowerPoint files in the folder you choose.
Each file is copied as the matching Google format: Docs, Sheets or Slides.
The converted copy keeps the original name, without the extension, in the same folder.
The original Office file is moved into an Originals subfolder so it is not converted twice.
Before it runs live
- Connect Google Drive
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Google Drive steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http
FOLDER_ID = "1AbCdEfInboxFolderId"
ARCHIVE_ID = "1AbCdEfOriginalsFolderId"
TARGET = {
"application/vnd.openxmlformats-officedocument.wordprocessingml.document": "application/vnd.google-apps.document",
"application/msword": "application/vnd.google-apps.document",
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "application/vnd.google-apps.spreadsheet",
"application/vnd.ms-excel": "application/vnd.google-apps.spreadsheet",
"application/vnd.openxmlformats-officedocument.presentationml.presentation": "application/vnd.google-apps.presentation",
}
def g(method, path, **kw):
resp = http.request(method, f"https://www.googleapis.com/drive/v3{path}",
headers={"Authorization": f"Bearer {credentials.connection('google', 'work')}"}, **kw)
resp.raise_for_status()
return resp.json()
@on_trigger
def run(event):
types = " or ".join(f"mimeType = '{m}'" for m in TARGET)
files = g("GET", "/files", params={"q": f"'{FOLDER_ID}' in parents and trashed = false and ({types})",
"fields": "files(id,name,mimeType)", "pageSize": 50})["files"]
done = []
for f in files:
name = f["name"].rsplit(".", 1)[0]
g("POST", f"/files/{f['id']}/copy", json={"name": name, "mimeType": TARGET[f["mimeType"]], "parents": [FOLDER_ID]})
g("PATCH", f"/files/{f['id']}", params={"addParents": ARCHIVE_ID, "removeParents": FOLDER_ID})
done.append(f["name"])
return {"converted": done}FAQ
Common questions
Is formatting kept?
Can I delete the originals instead of archiving them?
Does it work on a shared drive folder?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Resize and watermark new photos
Photos dropped into a folder are resized, compressed and watermarked into a web-ready folder.
See how it worksGet told when files change in key folders
You hear about new or edited files in the folders you care about, with who changed them.
See how it worksGet an email when a file is shared with you in Google Drive
Files and folders newly shared with your Google account are emailed every 15 minutes with the owner's name and a link.
See how it worksKeep exploring
Set up “Convert Word files uploaded to Google Drive into Google Docs” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.