Excel cannot send text messages on its own, but you can send them without writing a single line of VBA by using an add-in that adds a sidebar to your workbook. This guide shows how that works in Excel, what a first send looks like, what it costs, and what the approach cannot do yet.
Yes: an Excel add-in lets you write, preview and send texts from a sidebar, so no macro, script or formula does the sending.
The usual alternatives all involve code or accounts you manage yourself. Twilio’s own Excel tutorial, for example, has you paste a TypeScript Office Script into Excel on the web, work in a Microsoft 365 business or education plan with OneDrive for Business, and place your Twilio Account SID and Auth Token inside the script, where anyone with access to it can read them. The tutorial’s author describes it as a quick setup rather than something built to scale (
Twilio: send SMS from Microsoft Excel). That is workable for a developer testing an idea. It is a poor fit for an office manager who just wants to text the Tuesday crew.Sheet Gurus SMS takes the other route. It is an Office add-in that works natively in Microsoft 365 Excel on Windows, macOS and Excel for the web, and it mirrors the Google Sheets sidebar workflow. Nothing needs to be exported or synced to Google Sheets. You can read more about the Excel version in Microsoft Excel SMS Add-On: Send Personalized Bulk Texts.
No: if your contacts live in Excel, use the Excel add-in directly, and keep the Google Sheets add-on for teams whose files are already in Google Sheets.
Some older guides tell Excel users to upload the file to Google Sheets first and send from there. That still works as a route, and the article Send SMS From Excel via Google Sheets covers it. It adds a step, and a second copy of your data to keep current. Because the product now runs inside Excel itself, most Excel users can skip it. The sidebar looks and behaves the same in both apps, so a team with some people in each can share one way of working.
You need a workbook with a header row, a column of phone numbers, and an account on the free trial.
FirstName fills {FirstName}.You open the add-in on the tab that holds your recipients, write the message with variables, check the preview, and send.
{FirstName} wherever a value from the row should appear.Two details are worth knowing. A variable inserts what the cell shows, as formatted in the sheet, so a date cell formatted “Thu, Oct 15” arrives as “Thu, Oct 15”. And variables have no fallback: if a recipient’s cell is empty, that part of the message is simply left blank. Fill the column in, or send to that person separately.
Take a manager with 40 hourly staff who sends shift reminders every week and wants to text only the people who have not yet confirmed.
The roster sits on a tab called Roster, with headers in row 1 and one person per row:
| A: FirstName | B: Phone | C: Shift | D: Date | E: Status |
|---|---|---|---|---|
| Maria | (phone number) | Opening | Tue, Nov 10 | Pending |
| Devon | (phone number) | Closing | Tue, Nov 10 | Confirmed |
To text only the Pending rows, build a second tab called ToSend. The add-on sends to a tab, not to a filtered view, so the filtered rows need a tab of their own. Type the same five headers in A1:E1 of ToSend first, because the add-on reads variable names from the first row. Then, in cell A2, enter this Excel formula:
=FILTER(Roster!A2:E41, Roster!E2:E41="Pending")
The formula fills the rows beneath the headers with everyone whose Status is Pending, and column E is inside the range it filters on. Open the sidebar on ToSend and write:
Hi {FirstName}, your {Shift} shift is on {Date}. Reply Y to confirm or N if you cannot make it.
Check the preview, then send. Replies land in the sidebar’s two-way inbox, linked to the right row. When someone replies Y, change their Status on the Roster tab and the next ToSend list shrinks without any further work.

The inbox lives in the sidebar and shows replies in real time, so you can answer people without switching apps.
Conversations can be tagged, filtered to show only unread, searched by phone number and assigned to team members. Each reply stays linked to the recipient’s row in the sheet, so you see who “Y” came from without matching phone numbers by eye. You can also read and answer replies from the inbox on the Sheet Gurus website after signing in, including on an iPhone.
You can schedule a send for one future time, but you cannot make texts send automatically when something changes.
Scheduling is available on the Growth and Pro plans. A scheduled send goes out at one time for the whole batch, and it reads the tab when you schedule it, so rows added or changed afterwards are not part of that batch. You can cancel or edit a scheduled send before it goes out. There are no recurring schedules, so the weekly shift reminder above means scheduling each week’s batch yourself.
Triggers are not available. Nothing sends when a row is added, a form is submitted or a cell changes. Every send is started or scheduled from the sidebar. Triggers are on the roadmap with no announced date, so plan your workflow around a person pressing send or scheduling a batch.
Other limits worth knowing: the add-on does not save message templates (keep reusable messages in a tab of your own), and rows cannot each have their own send time.
Paid plans start at $9 a month, and each message segment of up to 160 characters is billed at your plan’s rate on top.
| Plan | Monthly | SMS per segment | Scheduling | Inbound replies |
|---|---|---|---|---|
| Starter | $9 | $0.04 | No | Billed at $0.04 per segment |
| Growth | $49 | $0.03 | Yes | Billed at $0.03 per segment |
| Pro | $99 | $0.02 | Yes | Free |
Paid plans do not bundle usage credits, so the monthly fee and the per-segment charges are separate. Using the shift example, 200 one-segment texts in a month cost $8.00 in usage on Starter, $6.00 on Growth and $4.00 on Pro, which makes the monthly totals $17, $55 and $103 before any replies. Starter is the cheapest at that volume. Pro becomes worthwhile when you need local area codes, free inbound messages or a larger team. Rates are the same for the US and Canada. A longer message uses more than one segment, which How Are SMS Segments Calculated In A Message? explains.
Starter charges $9 a month for each extra user and Growth charges $5, while Pro includes unlimited seats. Check which plans include scheduling and delivery tracking before you choose.
Yes, no VBA or macro is involved and you do not write or run any. Messages are composed and sent from a sidebar, not from spreadsheet formulas. The only formula in the example above, FILTER, builds a list of recipients and sends nothing.
Yes. The add-in works in Microsoft 365 Excel on Windows, macOS and Excel for the web.
No. Only the US and Canada are supported.
Yes. Put those rows on their own tab, for example with a FILTER formula, and send from that tab.
The variable is left blank in the message, so fill in every column a message uses before you send.