fiberglass
Goto Top

Klammern maskieren

Hi,

ich hab aus diesem Forum schon viele Tipps für das Entwickeln von batch dateien bekommen. Jetzt hab ich aber eine Frage die noch nicht gestellt wurde. Ich hoffe ihr könnt mir genau so gut wie sonst helfen.

Ich will eine Liste programmieren, welche automatisch eine Liste erzeugt, die Funktionen erzeugt und aufruft:
for %%X in (*.csv) do  (
  echo Function ATBTest (!i!"\)\" >> %erg%  
  echo call Connect_to_cvs "\("%%X")\" >> %erg%  
  echo End Function >> %erg%
  echo.>>%erg% 
  set /a i = !i! +1
)

Das Ergebnis sieht so aus:

Function ATBTest (1"\)\"
call Connect_to_cvs "\("EGO-Beratung_TF1.csv")\"
End Function

Es soll aber so aussehen:

Function ATBTest (1)
call Connect_to_cvs("Name geändert")
End Function

Das Problem ist, dass die Klammer zu das Programm vorzeitg beendet und das "End Function" abgeschnitten wird.
Meine Frage ist also: kann ich die Klammern maskieren?
Ich hoffe, ich konnte mein Problem verständlich machen, ist mein erster Beitrag.

Content-Key: 166223

Url: https://administrator.de/contentid/166223

Printed on: April 20, 2024 at 02:04 o'clock

Mitglied: 60730
60730 May 13, 2011 at 10:31:18 (UTC)
Goto Top
moin,

  • bitte mache <code> </code> Blöcke um deine Zeilen.
  • bitte die ganzen Tiere Schnippsel auf den OperationsGabentisch legen.
x i erg - würden wir dann wahrscheinlich auch verstehen wollen. delayedexpansionities?

Ich will eine Liste programmieren, welche automatisch eine Liste erzeugt, die Funktionen erzeugt und aufruft:
Über welche Art Sprache reden wir - eigentlich? Bätsch, VBA?

Gruß
Member: Friemler
Friemler May 13, 2011 at 10:34:32 (UTC)
Goto Top
Hallo fiberglass,

Du hast da was falsch verstanden. Statt \ musst Du ^ zum escapen verwenden. Sollte dann so aussehen (noch ein bisschen aufgehybscht):

for %%X in (*.csv) do (
  >>"%erg%" echo Function ATBTest^(!i!^)  
  >>"%erg%" echo   call Connect_to_cvs^("%%X"^)  
  >>"%erg%" echo End Function  
  >>"%erg%" echo.  
  set /a i+=1
)

Was dann hinterher ein
<code type="plain>
Function ATBTest(1)

machen soll (außer einer Fehlermeldung) weiß ich aber nicht... face-wink

Gruß
Friemler


[EDIT]
Bugfix: *.cvs durch *.csv ersetzt
[/EDIT]
Member: fiberglass
fiberglass May 13, 2011 at 10:56:48 (UTC)
Goto Top
hallo, danke für die Antworten.
Ich hab den Code mal markiert. Die Funktion wird von einem Qick-Test-Programm aufgerufen um in ein Programm automatisch Werte einzugeben und dies nicht manuell machen zu müssen.

Edit: Super Friemler!! hat geklappt =)
Vielen Dank
Mitglied: 60730
60730 May 13, 2011 at 11:03:06 (UTC)
Goto Top
@Friemler:

cvs<>csv face-wink
Wenn so sein soll - fehlend die ausgelayertend expansionierten und ein führendes set i=0 wäre auch nicht ganz verkehrt?

Qick-Test-Programm?
Member: Friemler
Friemler May 13, 2011 at 11:13:20 (UTC)
Goto Top
@t-mo

Naja, ich habe nuuur seine Frage beantwortet... face-wink . Schätze wir werden nochmal was von ihm hören...

Gruß
Member: fiberglass
fiberglass May 13, 2011 at 12:16:43 (UTC)
Goto Top
Hi,

Quick Test Professional könnt ihr ja mal googlen, ich habs auch erst ein mal benutzt.
.csv ist richtig :D ich hab den Quellcode nicht komplett kopiert, keine Ahnung wie weit ich das darf. Ist ja quasi geistiges Gedankengut der Firma, auch wenn ich es geschrieben hab ;)
Aber ihr habt mir echt geholfen!
Vielen Dank