;;;VBA-Sub in Exceldatei ;;;Sub test() ;;;Dim sRangeName, sLanguageText, rw ;;;Range("D4").Formula = "=sum(B4:C4)" ;;;Range("D5").FormulaLocal = "=summe(B5:C5)" ;;;MsgBox "Deutsch geschrieben und das ist die englische Formel: " & Range("D5").Formula ;;;MsgBox "Englisch geschrieben und das ist die deutsche Formel: " & Range("D4").FormulaLocal ;;; ;;;End Sub (defun c:test( / CELLS DATEIPFAD ERROR EXCEL SHEET SHEETS WORKBOOK) (setq dateipfad "C:\\temp\\Formula-FormulaLocal-LSP-VBA.xlsm") (if(and (findfile dateipfad) (setq Excel (vlax-get-or-create-object "Excel.Application")) (if(setq error(vl-catch-all-error-p (setq Workbook (vl-catch-all-apply 'JB_test:Excel:Open (list dateipfad excel))))) (alert (strcat "Die Datei oder eine gleichnamige ist bereits in Excel geöffnet," " bitte schließen und nochmal.")) 'T) (setq Sheets (vlax-get-property Workbook 'Sheets)) (setq Sheet(vlax-get-property Sheets 'Item "Tabelle1")) (setq Cells (vlax-get-property Sheet 'Cells))) (progn (vlax-put-property (vlax-get-property Cells 'Range "E4")'Formula "=sum(B4:C4)") (vlax-put-property (vlax-get-property Cells 'Range "E5")'FormulaLocal "=summe(B5:C5)") (alert (strcat "Deutsch geschrieben und das ist die englische Formel: " (vlax-variant-value (vlax-get-property (vlax-get-property Cells 'Range "E5")'Formula)))) (alert (strcat "Englisch geschrieben und das ist die deutsche Formel: " (vlax-variant-value (vlax-get-property (vlax-get-property Cells 'Range "E4")'FormulaLocal)))) ;;;Speichern (vlax-invoke-method Workbook 'Close :vlax-true) ;;;Excel "loslassen" (vlax-release-object Excel)) (if (not error) (alert (strcat "Entweder ist die Datei " "\"C:\\temp\\Formula-FormulaLocal-LSP-VBA.xlsm\"" "nicht vorhanden oder das Tabellenblatt \"Tabelle\" " "exisitiert nicht."))) ) (princ) ) ;;;Exceldatei öffnen (defun JB_test:Excel:Open (dateipfad excel / ) (vlax-invoke-method (vlax-get-property excel 'Workbooks) 'Open dateipfad))