Type.Missing не означает, что вы думаете, что это значит. Type.Missing - это артефакт COM - он просто сообщает объекту Excel, что вы не предоставляете этот конкретный параметр. Это та вещь, о которой обычно заботятся в VB.NET и VBA. В C # 4.0 есть поддержка необязательных параметров, что значительно упрощает работу.