The best way to ask this question is to explain what I'm trying to do. As an example, I am working on a question bank with absolute value inequality questions. I have 4 similar multiple choice questions, e.g.: "What is the solution set to the inequality: |x|>7" and then additional versions that use |x|<7, |x|<=7, |x|>=7. The first two versions have 8 identical answer choices (6 of which are sets involving a "7"), and the last 2 have the same answer choices, but with closed intervals instead of open. All of the expressions, both in the question and the answer, are done with equation editor.

Now, I want to load up the question bank with several more versions, where I just change the 7 to other numbers; e.g., duplicate these 4 questions maybe another 5-8 times. The only way I know how to do this is to:

1. copy each question into a temporary new bank (since I can't just "duplicate" a question in the same bank)

2. edit EVERY equation in each of the 4 questions and answers (approximately 28 edits, just for one new "set" of 4 questions)

3. move the questions from the temporary bank back to the "real" bank

4. lather, rinse, repeat 7 more times

Since all of the items that need to be edited are inside equation objects, I don't know if there is an easier way to do this. If there were a way to export the questions into some kind of text format, edit the text (even if it means editing the html for the equation objects??) using copy and paste, etc, and then import it BACK into Canvas, it would be SO much easier.

Alternatively, if there were a way to use variables inside equation objects (the way we can for formula questions), AND then use those same variables in multiple choice answer options, this would be a BREEZE. I have a feeling there is no breezy way to accomplish what I'm trying to do here.

We do have a campus license for Respondus, which I just recently downloaded and haven't really learned how to use yet. I hoped that it might be an easier way to create multiple questions like this, but since it also uses an equation editor for equation objects, I doubt that it will be much of a time/effort savings.

As a followup -- we have moved from the realm of theoretical into proof of concept. It is possible to generate a quiz question involving equations using Excel, bring it into Respondus, and then export it into Canvas. Below are some of the details.

Here's what a sample quiz looks like:

And here is what it looks like when you're editing the question.

Here's a mostly useless snapshot of what I imported as a CSV.

The question and choices are copied from another sheet where I did my scratch work. I can't have extra stuff on the sheet exported as a CSV.

Columns E-M contain valid LaTeX markup.

Here are the formulas for some of the key spots

E2: ="(x"&IF(A2<0,"+","-")&ABS(A2)&")"

F2: ="(x"&IF(B2<0,"+","-")&ABS(B2)&")^2"

I2: ="f(x)=\frac{"&E2&F2&"}{"&G2&H2&"}"

J2: ="x="&A2

N2: ="<p>Where does the graph of the rational function "&CanvasEquation(I2)&" cross the x-axis?</p>"

P2: ="<p>"&CanvasEquation(J2)&"</p>"

Q2: ="<p>"&CanvasEquation(K2)&"</p>"

I wrote a helper function called CanvasEquation using VBA to generate the image link. It greatly simplified the process.

To use the code, Press Alt-F11 in Excel, then go to Insert > Module and paste the code. Then, when you save the file, be sure to save it as an .xlsm (Macro-Enabled) file. Don't make the mistake of only saving the CSV, you'll lose all your formulas. Save the whole spreadsheet and then save just the first sheet as a CSV. Go back to the full file before doing more editing.

It's not pretty, but it works for the elementary stuff. I didn't have to add img as a separate variable, but I did just in case I wanted to do something else with it later. I did minimal HTML entity escaping, although it looks like the only thing that had to be escaped were the ampersand the quote mark.

Then in Respondus, I did the CSV import as HTML. If you get an error that the CSV file can't be read, you might need to close the Excel file first.

I should probably do a write-up about this as a blog post, but hopefully it will give you enough information to get moving.