OK, it looks like they're coded correctly for OpenOffice Basic. They're pretty simple.
No. At least not the version used for 3.0. I can list a number of problems with those macros that will OpenOffice 3.0 balk at them, even though I don't know how to solve them. I don't know if 2.4 and before used a Basic compatible with Excel's, but 3.0 doesn't.
- Fields (used by passing a range e.g. A3:I3) is in OO not a Range object that lets you access fields in it, rather it's an array containing the values of those fields. That one I got around (though not in a way that works for Excel too), by looping over the array rather than using Fields.Cells.
- You cannot access a range using Range with a name. I believe the correct function in OO is something like Sheet.getRangeByName though I haven't verified it.
- The function Find doesn't seem to exist for OO, and I cannot find any equivalent in the API docs. I guess I could code up my own, but I fear that would be really slow, and the sheet is already a bit lagging at times.
- All cells are passed by value, not by object. So for instance C.Value doesn't make sense since C is already a value.
Upgrading to OpenOffice 3.0 solves the runtime problems. Now, as best I can tell, the main problem is that the macros aren't found by the spreadsheets. I'm not entirely sure how to link the code to specific sheets.
Yeah, this had me thrown off completely. No matter how I tried to save my edits, when I exited and reopened OO they were gone. I saved them as an external .bas file, but that didn't help me link them.
Also, I note that you use a variable named speed. OpenOffice seems to think 'speed' is a function... how does that get looked up?
That's surprising. 'speed' is a named cell, using the standard naming method (Add menu->Name->Define, may be called something different since mine is in Swedish and these are my own translations). Not sure why it would complain about that. You could try changing it to the literal '$Setup.$B$7' that the name is defined as.
EDIT: I had a quick look at the sheet, I think this is a false error. It doesn't complain about 'speed' per se since the AY column works. So for column AZ it's likely just a followup problem that AX doesn't work, due to the unknown macros.