You could try putting this specific code into a separate unit with {$mode objfpc} at the top. As long as you compile this with Lazarus it's going to be fine. Your other units can stay the same. You don't need macpas in Lazarus on OSX. You just need macpas for Mac-Pascal code units (for things like return x instead of result etc.). I assume you don't need to compile this code with another pascal compiler. And if you do you could add {$mode objfpc} in conditional defines in that separate unit.
unit pasteintoopenoffice;
interface
{$ifdef fpc}
{$mode objfpc}{$H+}
{$endif}
procedure PasteIntoWordProcessor;
implementation
uses
Variants, ComObj, ActiveX, Windows;
procedure PasteIntoWordProcessor;
// ... etc