Avatar billede Claus Mester
12. oktober 2000 - 12:26 Der er 8 kommentarer og
1 løsning

Gemme ændringer sket runtime

Hej

Jeg har via en knap kodet således, at der ved tryk på den, tilføjes en tekstboks.

Men når jeg afslutter (Terminate el. Deactivate) programmet, gemmes ændringerne ikke. Hvordan kan jeg kode således, at ændringerne gemmes \"for ever\" ???

Koden skal laves i VBA for Word.

Nicolaus
Avatar billede cktarget Nybegynder
12. oktober 2000 - 12:38 #1
Hejsa

Hvis du i knappens click_event bruger den kommando der hedder

application.ActiveDocument.SaveAs

eller

application.ActiveDocument.Save

Så vil du kunne opnå den ønskede effekt.

Mvh Kedde
Avatar billede Claus Mester
12. oktober 2000 - 13:34 #2
Den forslåede kode, fungerer jo kun ved at gemme ændringerne for dokumentet. Den gemmer ikke ændringerne fortaget på en Userform - runtime.
( Den tilføjede kontrol - tekstboks )

Nicolaus
Avatar billede cktarget Nybegynder
12. oktober 2000 - 14:26 #3
Så tror jeg nok at jeg har misforstået spørgsmålet.
Hvad er det helt præcist du er ved at opbygge, og hvad er det du vil gemme.

Mvh Kedde
Avatar billede vbghost Nybegynder
12. oktober 2000 - 14:58 #4
ved at putte oplysninger af knappen i en \"INI\" fil.
Avatar billede vbghost Nybegynder
12. oktober 2000 - 15:01 #5
ikke knappen men tekstboxen... UPS
Avatar billede Claus Mester
12. oktober 2000 - 16:20 #6
Jobbet:

- En VBA applikation lavet i Word(vba). Der er en Userform1, en knap og intet andet.

Ved kørsel af programmet:

- Ved tryk på Command1, fremkommer en ny kontrol på Userform1 - Textbox1.

Ved afslutning af programmet:

- Ved tryk på enten \"x\'et\" øverst i højre hjørne af formen, eller ved tryk på en anden knap ( f.eks. Command2_GemOgAfslut), skal formen gemmes INKL. den nye textbox. Dvs. brugeren kan Runtime tilføje et kontrolelement og ved afslutning gemmes ændringerne.

>vbghost:

- Hvordan mener du den skal gemmes i en INI fil? ( Jeg er lettere Newbie :-)
Avatar billede vbghost Nybegynder
12. oktober 2000 - 19:51 #7
Jeg har ikke lavet denne her kode! men det var vist... en anden fra eksperten.dk (ok)

I moduelen
Husk at opgive:
                 
Public Declare Function GetPrivateProfileString Lib \"Kernel32\" Alias \"GetPrivateProfileStringA\" (ByVal sSection As String, ByVal sKey As String, ByVal sDefault As String, ByVal sReturn As String, ByVal lReturnSize As Long, ByVal sFilename As String) As Long
Public Declare Function WritePrivateProfileString Lib \"Kernel32\" Alias \"WritePrivateProfileStringA\" (ByVal sSection As String, ByVal sKey As String, ByVal sSetting As String, ByVal sFilename As String) As Long



Function HentIni(txtSection As String, txtKey As String, txtPath As String) As String
  Dim sValue As String
  Dim lSize As Long
  Dim lTemp As Long
  Dim sDefault As String
  sValue = String(256, \" \")
  lSize = Len(sValue)
  lTemp = GetPrivateProfileString(txtSection, txtKey, sDefault, sValue, lSize, txtPath)
  If lTemp <> 0 Then
    HentIni = sValue
  Else
    HentIni = sDefault
  End If
End Function


!I formen


For at læse fra en Ini fil:skal der være forskellige ting: 

--Alloha.ini--
[General]
WinMEstinker=ja
IE55stinker=ja

[mh]
bla=12

---

ok for at læse:
output=HentIn(\"General\", \"WinMEstinker\", \"C:\\Alloha.ini\")

for at skrive i ini:
Call WritePrivateProfileString(\"General\", \"Erjeggud\", Textbox1.Text, \"C:\\Alloha.ini\"))

OK det var så lidt...
Avatar billede Claus Mester
13. oktober 2000 - 08:19 #8
???
Det forstår jeg ikke en dyt af!!!

Behøver jeg virkelig skrive denne kode for at gemme ændringerne?

Jeg forstår simpelthen ikke koden!

Avatar billede vbghost Nybegynder
13. oktober 2000 - 13:41 #9
Ja...

du kan også vælge at skrive til en fil... men det er jo ikke smart... når du kan lave et ini fil?

...



Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB
Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel