Office-Fragen.de

Normale Version: VBA-Script, aber Makros verboten, was tun
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich habe hier ein (altes) VBA-Programm in Excel 2007. Ist schon ewig in Gebrauch und alle haben sich daran gewöhnt. Das File ist aktuell im Format .xls.

Das Problem: seit 1.1. sind Makros an einem Standort auf unseren Rechnern nicht mehr erlaubt. Grund IT-Sicherheitsvorschriften. Ich bin gerade dabei herauszufinden was exakt nicht mehr erlaubt ist, aber die Idee ist: keine Makros. Zur Info: ich bin auch aktuell nicht am Standort an dem das Problem auftritt, werde vermutlich nächste Woche dort hinfahren.

Die Nutzer bitten mich etwas daran zu ändern, damit es weiter benutzbar ist.

Mein Verständnis, ein VBA-Programm ist eben ein Makro, das heißt es gibt keine echte Lösung außer das Ding nochmal z.B. in VB zu schreiben.
Eine Tricklösung wäre ein Format zu finden welches hier nicht explizit verboten ist und auch nicht automatisch funktionsunfähig gemacht wird.

Meine Fragen:
- ist mein verstädnnis korrekt?
- was würde jemand vorschlagen zu tun, der mehr davon versteht als ich? (bin sowohl für "echte" Lösungen als auch Tricks dankbar).

Noch kurz zu mir: bin ab und an Programierer, ist (hauptsählich Matlab, Python, ich kann ein VBA oder VB-proigramm verstehen).

Viielen Dank schon mal m voraus!!
Hola,

da du leider nichts über das Makro schreibst, wird Hilfe nahezu unmöglich.
Eventuell kann man das durch Formeln lösen, aber ohne zu wissen was das jetzige Makro macht, keine Chance.

Gruß,
steve1da
Moin,
ich glaube, dass ich eine schlechte Nachricht für dich habe: "Makro" ist mehr oder weniger das Synonym für VBA. Und ich kann mir denken, dass die betroffenen Standorte keine "klassischen" Makros sondern VBA-Module enthalten.

Ein wenig kannst du aus der "Misere" vielleicht herauskommen, wenn du Power Query einsetzen kannst/darfst (in 2007 aber nicht möglich). Und das *.xls-Format ist nun auch nicht wirklich der Datensicherheit zuträglich. Und ich nehme an, dass (aus gutem Grund) VB genauso untersagt sein wird wie VBA.
Wenn die Lösung nicht allzu komplex ist, wäre es ggf. möglich die VBA-Programmierung durch eine Formel basierte Lösung zu ersetzen. Ggf. mit Einschränkungen bzgl. der Nutzerfreundlichkeit.

LG Alois
Hallo,

finde heraus, was genau verboten ist:

Z.B.:

- eine *.xlsm
- Änderungen im Trust-Center
- Änderungen in der Registry
- ein von Hand mit copy/paste eingefügter VBA-Code
- Powershell (kann auch Excel-Dateien lesen/verändern)

mfg
Hallo,

erstmal Danke für die Kommentare. Sorry, ich hätte vermutlich mehr zum VBA-Script schreiben sollen.

Ich kann das Script selbst nicht anhängen, da aktuell dort noch vertrauliche Informationen enthalten sind. Es ist auch lang genug, das es vermutlich niemand ganz durcharbeiten will.

Die zentrale Aufgabe des Scriptes ist es alle in einem Ördner enthaltenen Textfiles (exakte Filenamen und Anzahl Files unbekannt, enthalten Messdaten) einzulesen, diese über eine Userform mit Nutzereingaben zu ergänzen, daraus eine Zusammenfassung zu erstellen und diese anzuzeigen sowie als Datei zu speichern. Ein Großteil des Codes besteht aus der Suche nach Keywortern in den Textfiles. Es sind auch einige For-Schleifen im Code.

@alle: also Formeln wird schwierig.

@Fennek: werde versuchen das nächste Woche herauszufinden. Danke für die Stichworte.

@GMG-CC:
So sehe ich das auch: Makro = VBA, keine Makros erlaubt => VBA-Prog. kann nicht laufen. Mir ist nur wichtig, daß ich keine offensichtliche, einfache Lösung übersehe, bevor ich da ein großes Fass aufmache.
Es sind sicher VBA-Module, d.h. im xls-File öffne ich VBA und dort steht dann der Code unter VBA-Project/Module. Ist nicht jedes Makro ein VBA-Modul? Was wäre ein klassisches Makro? 

Nochmal danke an euch alle für die Antworten.

Grüße
Moin,
"klassische" Makros sind (m)ein freundlicher Name für das, was allgemein "Excel 4.0-Makros" benannt wird. Damals gab es noch kein VBA und die "Programmier-Anweisungen" waren landessprachlich, also hier in deutsch. Brrr ... Auch MS verwendet heute den Begriff Makros, obwohl es ja ein klassischer VBA-Code, also ein echtes Programm ist und keine Anhäufung einzelner alleinstehender Befehle ist (ja, ich weiß ... Angel

Wenn du in Excel [Strg][F8] klickst, landest du im entsprechenden Editor. Ach ja und im Netz findest du auch reichlich Beispiele für Excel 4.0-Makros.
Und gehe einmal vom worst case aus, dass alles, was *.xlsb oder *.xlsm als Endung verwendet bzw. in aktuellen Excel-Versionen verwenden müsste verboten ist. Was dann aber auch weitgehend "Adios, UFos (Userforms)"…


Vieles von dem, was du geschildert hast, lässt sich mit Power Query erledigen. Eventuell mit einer Zwischenpause für die Ergänzung von Daten. So GAAANZ grob gesagt: PQ ist ein SQL'oides Tool, welches immens viel über eine GUI erledigt und ähnlich einem VBA-Script Automatismen beherrscht.