svenac2010
Goto Top

Datei mit Inhalten aus Tabellenfeldern erstellen und unter bestimmten Namen u.Ort speichern bzw ersetzen.

Hallo,
ich kenne mich mit VBA unter Access soweit wie nicht aus, daher folgende Frage an euch.
Habe Access 2010 im Einsatz

Ich habe eine ini Datei, welche in einem bestimmten Verzeichnis liegt.
Diese Ini Datei soll per Access befüllt werden.

D.h. die Felder Defaultwebserver=XX.XXX.XXX.XXX
und
hdlnr=XXXXX

soll aus Acess heraus genommen werden, sobald in einem Formular ein entsprechendes Icon gedrückt wird
In dem Formular werden die Informationen bereits vorgeblendet.

Im Textfeld des Hauptformulars werden über den Steuerelementinhalt
Datensatzquelle [CROSS Betriebe].Betriebsnummer ( text52) soll = hdlnr=XXXXX

und dem Unterformular

Datensatzquelle Abfrage Server (IP Linux Server) soll=Defaultwebserver=XX.XXX.XXX.XXX

Ini Datei sieht wie folgt aus,
"
[Environment]
LDIR=C:\cross2
TSLDIR=%HOMEDRIVE%%HOMEPATH%\cross2
LANG=de_AT

[Settings]
LogPath=%LDIR%\logs
VersionFile=%LDIR%\version.ini
UpdateServer1=\\XXXX\DFS01$\zentral\ish\Standorte

log=1
schulicons=0
kts=1
ngs=1
Defaultwebserver=XX.XXX.XXX.XXX
notscheck=1
hdlnr=XXXXX
"

ich kann gerne eine Beispieldatei zu verfügung stellen.
Ich stelle mir das so vor.. beim Klick auf ein Icon X im unterformular soll eine Datei erzeugt werden, welche og.g. inhalte aus Access sich zieht und dann die Datei im vorgebenen Verzeichnis speicher/ersetzt.

Content-ID: 180862

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

Ausgedruckt am: 23.11.2024 um 08:11 Uhr

83928
83928 22.02.2012 um 12:23:17 Uhr
Goto Top
Hi,

Ich stelle mir das so vor.. beim Klick auf ein Icon X im unterformular soll eine Datei erzeugt werden, welche og.g. inhalte aus
Access sich zieht und dann die Datei im vorgebenen Verzeichnis speicher/ersetzt.

Du kannst mit VBA auch direkt die ini-Datei bearbeiten (am besten mit Hilfe der Win-Api). Das Beispiel speichert auf Knopfdruck den "Defaultwebserver" (Feld1 in dem Formular) und den "hdlnr" (Feld2) in der ini-Datei (Sektion Settings).

Feldnamen und ini-Pfad musst Du natürlich noch anpassen
Option Compare Database
Private Declare Function WritePrivateProfileString Lib "kernel32" _  
  Alias "WritePrivateProfileStringA" ( _  
  ByVal lpApplicationName As String, _
  ByVal lpKeyName As Any, _
  ByVal lpString As Any, _
  ByVal lpFileName As String) As Long

Private Sub Befehl4_Click()
Dim myIniFile As String
Dim val As String
 
myIniFile = "c:\tmp\ini.ini"  
val = Nz(Me!feld1)
WritePrivateProfileString "Settings", "Defaultwebserver", val, myIniFile  
val = Nz(Me!feld2)
WritePrivateProfileString "Settings", "hdlnr", val, myIniFile  
End Sub

Gruß
svenac2010
svenac2010 22.02.2012 um 21:11:45 Uhr
Goto Top
Vielen dank für die Hilfe,

hat mir deutlich weiter geholfen.
Stehe jetzt nur noch vor dem Problem, dass bei doppelklick die o.g. Prozedur zwar ausgeführt wird, aber vorher ein Hinweis auf ein OLE Objekt kommt ( hatte eine Verlinkung auf ein OLE Bildobjekt in einer Tabelle gemacht)

Hierzu werde ich aber eine andere anfrage stellen