• Dieses Forum ist die maschinengenerierte Übersetzung von www.cad3d.it/forum1 - der italienischen Design-Community. Einige Begriffe sind nicht korrekt übersetzt.

Von Autolisp zu VBA-Makro mit Variablen

  • Ersteller Ersteller ghirosoft
  • Erstellt am Erstellt am

ghirosoft

Guest
bye to all,
können sie sich von autolisp oder vlisp ein makro an das makro eine variable erinnern, um den code auszuführen?

(befehl "-vbarun" "research_case" .... variabel)
suche_caso = makro
variabel = jeder wert (in meinem fall string)

ich versuchte zu finden, aber ich fand nichts.
danke.
 
bye to all,
können sie sich von autolisp oder vlisp ein makro an das makro eine variable erinnern, um den code auszuführen?

(befehl "-vbarun" "research_case" .... variabel)
suche_caso = makro
variabel = jeder wert (in meinem fall string)

ich versuchte zu finden, aber ich fand nichts.
danke.
mmm ich denke nicht direkt, aber von vba können sie einen wert von einer variablen in der zeichnung durch acaddictionary gespeichert bekommen und ich denke, dass sie sie in diesen wörterbüchern auch durch lisp quidni speichern ist ein bisschen schlank, aber anstatt die variable passieren, schreiben sie es an einem punkt, und dann die pfirsiche mit lavba.

ich presse, dass ich nie versucht habe, sie in lisp zu schreiben, aber sie von vba zu lesen sie

z.
'carica dati dwgprops
const Dictionary_name = "dwgprops"

= 0

fehlerwiederaufnahme
dwginfo = thisdrawing.dictionaries(dictionary_name)
fehlerwiederaufnahme
dwginfo.getxrecorddata datatype, datatype


für i = lbound(daten) zu ubound(daten)
debug.print datatype(i) & ";" & data(i)
ANHANG
 
gut. ich hatte nicht daran gedacht, von vba die variable zu erholen.
in diesem fall wäre der string einer abfrage zur vba x-abfrage.
in ein paar worten ich habe ein vba-projekt mit zugriff, wo ich ein bisschen abfrage in abhängigkeit von den gemachten schlupfs bearbeiten dann blöcke mit kompilierten attributen einfügen.
allerdings gibt es auf dem vba-projekt die okx-steuerung des netztyps datagrid oder der flexgrid, wo ich das ergebnis der abfrage sah, dann wähle ich die betroffene zeile und stecke den block ein.
das problem ist, dass diese typen von okx in vba blockiert sind und so kann ich das projekt nicht mehr wiederverwenden.
ich wollte daher mit einer listbox in dcl versuchen, den abfragecode in vba wiederherzustellen und mit der ergebnisliste füllen.
ich weiß, dass ich das projekt transformieren könnte, indem ich es in vb6 kompiliere (mit besonderen änderungen), aber das wird nur in extremis sein.
 
gut. ich hatte nicht daran gedacht, von vba die variable zu erholen.
in diesem fall wäre der string einer abfrage zur vba x-abfrage.
in ein paar worten ich habe ein vba-projekt mit zugriff, wo ich ein bisschen abfrage in abhängigkeit von den gemachten schlupfs bearbeiten dann blöcke mit kompilierten attributen einfügen.
allerdings gibt es auf dem vba-projekt die okx-steuerung des netztyps datagrid oder der flexgrid, wo ich das ergebnis der abfrage sah, dann wähle ich die betroffene zeile und stecke den block ein.
das problem ist, dass diese typen von okx in vba blockiert sind und so kann ich das projekt nicht mehr wiederverwenden.
ich wollte daher mit einer listbox in dcl versuchen, den abfragecode in vba wiederherzustellen und mit der ergebnisliste füllen.
ich weiß, dass ich das projekt transformieren könnte, indem ich es in vb6 kompiliere (mit besonderen änderungen), aber das wird nur in extremis sein.
:confused::eek:confused::eek: für mich ist es gut....

es tut mir leid, aber ich folgte ihnen für ein paar sätze, dann verlor ich... ich habe eine weile mit der vba gestopft, aber von dort bis hin zu laufendem okx mit datagrid oder flexgrid... ich brauche ein studienjahr, um ihnen eine vernünftige antwort zu geben...
 
in ein paar worten mit einigen fenstern aktualisiert bestimmte steuerungen (objekte von vba) ist es nicht mehr möglich, sie in die form einzufügen und daher kann ich die daten nicht anzeigen.
diese objekte sollen daten auf dem tabellenformat-typ zugriff oder excel anzeigen.
danke.
wenn ich das tue, werde ich das beispiel veröffentlichen.
 
ich weiß nicht, ob ich gut verstanden, aber ich ware diese Routinen dauern, die es abnehmen, Datierung directt von lisp zu vba und umgekehrt durch vlisp, die in "referenzen" geladen wird. Ich benutze es.
Ich hoffe, du kannst helfen.

funktion readlispvariable(varname als string) als Variante
dim vc als Objekt
Wenn nichts ist
set vl = createobject("vl.application.16")
Ende

mit vl.activedocument.funktionen
set sym = .item("read").
leslispvariable = .item("eval").
Endung mit
Funktion


sub setlispvariable(varname als string, wert als variante)
dim vc als Objekt
dim sym als Objekt

Wenn nichts ist
set vl = createobject("vl.application.16")
Ende

mit vl.activedocument.funktionen
set sym = .item("read").
.item("set"). funcall sym, wert
Endung mit
Ende

'para testar, red esta macro primeiro:
Sub setar()
setlispvariable "nomevar", "funciona!"

Ende

"depois red esta:
sub pegar()
msgbox readlispvariable("nomevar")
Ende


und por fim, experiment isto:
keine konsole tun visualle lisp (ou na linha de command do cad), fassade:

(setq muitobom "que beleza!!!)

depois edited a macro "pegar" para ficar assim:

sub pegar()
msgbox readlispvariable("muitobom")
Ende

Hi.
 
danke.
ich versuchte, eine variable in lisp zu speichern und sie von vba erholen und es funktioniert, aber jetzt gibt es ein größeres problem, an das ich nicht gedacht hatte. .
meine datenbank praktisch ein lager, wo ich markenbauer, familien und genres habe. auf vba i hatte eine baumstruktur (betrachtung), wo ich diese 3 felder geladen habe und auf einem gitter (ox-objekttyp datagrid oder mshflex von vba) wurden die codes geladen, die aus den 3 auf der baumstruktur ausgewählten werten resultieren.
wie simuliere ich den baum? ?
ich dachte nicht daran. und ich glaube, es hört auf.
oder auf dem vba-projekt anstelle des rasters nutze ich eine listbox, aber es ist länger verarbeitung nach mir.
 
Hallo.
Vor langer Zeit fragte ich eine Frage nach der Passage von Variablen aus vba und lisp und umgekehrt, ich versuchte und arbeitete. Da ich die Prozedur verlassen habe, habe ich den Test nicht gespeichert, ich retrying jetzt und ich muss von vba eine Funktion laufen, die mir ein Array kompiliert, das einer Variable zugewiesen wird. Ich muss es von vba erholen, aber es funktioniert nicht.
Ich nehme an, dass der Teil, den ich von Ihrem Ort erholen muss, das ist das.

Funktion readlispvariable(varname als string) als Variante
dim vl als Objekt
wenn vl nichts ist
set vl = createobject("vl.application.16")
Ende

mit vl.activedocument.funktionen
set sym = .item("read").funcall(varname)
leslispvariable = .item("eval").funcall(sym)
Ende mit
Endfunktion
in Wirklichkeit ordnet die Variable "list" einen Wert "hippo"

von vba call über sendcommand die lisp-Funktion,
und später die Readlisp-Funktion,
aber ich finde mich mit
Mit freundlichen Grüßen
Kannst du mir helfen?
Danke.
 

Statistik des Forums

Themen
58.521
Beiträge
499.056
Mitglieder
104.110
Neuestes Mitglied
ChristianR

Zurzeit aktive Besucher

Keine Mitglieder online.
Zurück
Oben