VBA e instrumentul clasic de automatizare Excel. Dar VBA nu funcționează în Excel Online, nu rulează pe Mac și nu se integrează cu Power Automate.
Office Scripts rezolvă toate astea. E noul limbaj de automatizare Microsoft, bazat pe TypeScript, care funcționează în browser, pe orice sistem de operare și se conectează direct cu Power Automate.
Ce sunt Office Scripts
Office Scripts sunt scripturi TypeScript care automatizează acțiuni în Excel Online. Spre deosebire de VBA:
- Funcționează în Excel Online (browser) și Excel desktop pe Microsoft 365
- Compatibil Mac, Windows, orice browser
- Se pot apela din Power Automate — automatizare completă fără deschiderea manuală a fișierului
- Se salvează pe OneDrive — disponibile oriunde, nu blocate pe un calculator
- Sintaxă modernă (TypeScript/JavaScript) — mai ușor de învățat decât VBA
Cum creezi primul tău Office Script
1. Deschizi un fișier Excel în Excel Online (browser)
2. Tab Automatizare → Înregistrare acțiuni (similar cu Macro Recorder din VBA)
3. Faci acțiunile dorite
4. Oprire înregistrare → Excel generează codul TypeScript automat
5. Poți edita codul sau îl rulezi direct
Alternativ: Automatizare → Scripturi noi → editor de cod direct.
Exemple de scripturi utile
Script 1: Formatare standard raport
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const range = sheet.getUsedRange();
// Antet bold, fundal albastru, text alb
const header = sheet.getRangeByIndexes(0, 0, 1, range.getColumnCount());
header.getFormat().getFill().setColor("#1565C0");
header.getFormat().getFont().setColor("white");
header.getFormat().getFont().setBold(true);
// Autofit coloane
range.getFormat().autofitColumns();
}Script 2: Adaugă timestamp la ultima modificare
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const cell = sheet.getRange("A1");
const now = new Date().toLocaleString("ro-RO");
cell.setValue("Ultima actualizare: " + now);
}Script 3: Export foaie curentă ca valori (fără formule)
function main(workbook: ExcelScript.Workbook) {
const source = workbook.getActiveWorksheet();
const newSheet = workbook.addWorksheet("Export_" + new Date().getTime());
const data = source.getUsedRange().getValues();
newSheet.getRangeByIndexes(0, 0, data.length, data[0].length).setValues(data);
}Integrarea cu Power Automate — puterea reală
Asta e diferența majoră față de VBA: Office Scripts se poate apela din Power Automate, fără ca cineva să deschidă Excel.
Exemplu de flux Power Automate:
1. Trigger: în fiecare luni la 7:00
2. Acțiune: Excel Online (Business) → Run Script → selectezi scriptul de formatare
3. Acțiune: Send Email → trimiți raportul formatat automat
Nimeni nu atinge tastatura. Raportul se formatează și se trimite singur.
Office Scripts vs VBA: tabel comparativ
| VBA | Office Scripts | |
|---|---|---|
| Excel Online | ❌ | ✅ |
| Mac | ❌ | ✅ |
| Power Automate | ❌ | ✅ |
| Înregistrare acțiuni | ✅ | ✅ |
| Acces la sistemul de fișiere local | ✅ | ❌ |
| Limbaj | VBA | TypeScript |
| Comunitate și resurse online | Mare | În creștere |
Concluzie
Office Scripts e viitorul automatizării Excel în ecosistemul Microsoft 365. Dacă firma ta lucrează cu Excel Online sau vrei să integrezi automatizarea Excel cu Power Automate, Office Scripts e instrumentul potrivit.
Excel Group implementează Office Scripts și fluxuri Power Automate pentru automatizarea completă a rapoartelor Excel în firmele din România și Moldova. Contactează-ne.
Întrebări frecvente
Office Scripts funcționează și în Excel desktop, nu doar Online?
Da, în Excel desktop cu abonament Microsoft 365. Nu funcționează în versiunile perpetue (Excel 2019, 2021).
Trebuie să știu TypeScript ca să folosesc Office Scripts?
Nu neapărat. Înregistrarea acțiunilor generează codul automat. Pentru scripturi mai complexe, TypeScript e util, dar sintaxa de bază e similară cu JavaScript și se învață rapid.
Scripturile sunt private sau pot fi partajate cu echipa?
Scripturile se salvează pe OneDrive-ul tău personal implicit. Poți să le muți în folderele partajate de SharePoint ca să fie accesibile întregii echipe.

