Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
536to540
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
536to540
536to540
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Daten aus Userform speichern

Daten aus Userform speichern
22.12.2004 08:24:21
Frank
Hallo,
ich habe das Problem, das das speichern der Daten aus einem userform in eine Tabelle sehr lange dauert. Es sind ca 130 Textfelder und 40 Kontrollkästchen
die gesichert werden müssen. Die Speicherung dauert bis zu 90 Sekunden. Das
Verzeichnis C:\Temp habe ich gelöscht. An der Hardware kann es auch nicht liegen. Das Notebook hat einen 1,40 Ghz Prozessor und 512 MB Ram.
Da ich nur VBA Grundkenntnisse habe, gehe ich davon aus das ich einen Fehler gemacht habe.
Ich bin für jede Hilfe dankbar.
Viele Grüße Frank

Private Sub save_Click()
'Den aktuellen Eintrag speichern
aZelle = ActiveCell.Row
Set TB = Worksheets("Kunden")
If UserForm1.[p1kdnr].Text = "" Then
MsgBox "Leereingaben nicht erlaubt !"
p1kdnr.SetFocus
Exit Sub
End If
On Error Resume Next
' Leeren der Combobox sonst speichern nicht moeglich
ComboBox1 = ""
'Kundeninformationen von Page 1
TB.Cells(aZelle, 1) = p1kdnr.Text
TB.Cells(aZelle, 7) = p1kunde.Text
TB.Cells(aZelle, 6) = p1gruppe.Text
TB.Cells(aZelle, 8) = p1strasse.Text
TB.Cells(aZelle, 10) = p1plz.Text
TB.Cells(aZelle, 11) = p1ort.Text
TB.Cells(aZelle, 16) = p1telefon.Text
TB.Cells(aZelle, 20) = p1telefon2.Text
TB.Cells(aZelle, 19) = p1fax.Text
TB.Cells(aZelle, 12) = p1email.Text
TB.Cells(aZelle, 4) = p1name.Text
TB.Cells(aZelle, 5) = p1funktion.Text
TB.Cells(aZelle, 23) = p1lieferant.Text
TB.Cells(aZelle, 22) = p1bemerkungen.Text
TB.Cells(aZelle, 24) = p1besuch1.Text
TB.Cells(aZelle, 25) = p1besuch2.Text
TB.Cells(aZelle, 26) = p1besuch3.Text
TB.Cells(aZelle, 27) = p1besuch4.Text
TB.Cells(aZelle, 28) = p1besuch5.Text
TB.Cells(aZelle, 29) = p1besuch6.Text
TB.Cells(aZelle, 30) = p1besuch7.Text
'groesse
TB.Cells(aZelle, 32) = TBAF.Text
TB.Cells(aZelle, 43) = TBAQ.Text
TB.Cells(aZelle, 54) = TBBB.Text
TB.Cells(aZelle, 65) = TBBM.Text
TB.Cells(aZelle, 76) = TBBX.Text
TB.Cells(aZelle, 87) = TBCI.Text
TB.Cells(aZelle, 98) = TBCT.Text
TB.Cells(aZelle, 109) = TBDE.Text
TB.Cells(aZelle, 120) = TBDP.Text
TB.Cells(aZelle, 131) = TBEA.Text
TB.Cells(aZelle, 142) = TBEL.Text
TB.Cells(aZelle, 153) = TBEW.Text
TB.Cells(aZelle, 164) = TBFH.Text
'Sorte
TB.Cells(aZelle, 33) = TBAG.Text
TB.Cells(aZelle, 44) = TBAR.Text
TB.Cells(aZelle, 55) = TBBC.Text
TB.Cells(aZelle, 66) = TBBN.Text
TB.Cells(aZelle, 77) = TBBY.Text
TB.Cells(aZelle, 88) = TBCJ.Text
TB.Cells(aZelle, 99) = TBCU.Text
TB.Cells(aZelle, 110) = TBDF.Text
TB.Cells(aZelle, 121) = TBDQ.Text
TB.Cells(aZelle, 132) = TBEB.Text
TB.Cells(aZelle, 143) = TBEM.Text
TB.Cells(aZelle, 154) = TBEX.Text
TB.Cells(aZelle, 165) = TBFI.Text
'Wprodukt im Einsatz
TB.Cells(aZelle, 34) = TBAH.Text
TB.Cells(aZelle, 45) = TBAS.Text
TB.Cells(aZelle, 56) = TBBD.Text
TB.Cells(aZelle, 67) = TBBO.Text
TB.Cells(aZelle, 78) = TBBZ.Text
TB.Cells(aZelle, 89) = TBCK.Text
TB.Cells(aZelle, 100) = TBCV.Text
TB.Cells(aZelle, 111) = TBDG.Text
TB.Cells(aZelle, 122) = TBDR.Text
TB.Cells(aZelle, 133) = TBEC.Text
TB.Cells(aZelle, 144) = TBEN.Text
TB.Cells(aZelle, 155) = TBEY.Text
TB.Cells(aZelle, 166) = TBFJ.Text
'Mengen Potential
TB.Cells(aZelle, 35) = TBAI.Text
TB.Cells(aZelle, 46) = TBAT.Text
TB.Cells(aZelle, 57) = TBBE.Text
TB.Cells(aZelle, 68) = TBBP.Text
TB.Cells(aZelle, 79) = TBCA.Text
TB.Cells(aZelle, 90) = TBCL.Text
TB.Cells(aZelle, 101) = TBCW.Text
TB.Cells(aZelle, 112) = TBDH.Text
TB.Cells(aZelle, 123) = TBDS.Text
TB.Cells(aZelle, 134) = TBED.Text
TB.Cells(aZelle, 145) = TBEO.Text
TB.Cells(aZelle, 156) = TBEZ.Text
TB.Cells(aZelle, 167) = TBFK.Text
'Bewertung
TB.Cells(aZelle, 37) = TBAK.Text
TB.Cells(aZelle, 48) = TBAV.Text
TB.Cells(aZelle, 59) = TBBG.Text
TB.Cells(aZelle, 70) = TBBR.Text
TB.Cells(aZelle, 81) = TBCC.Text
TB.Cells(aZelle, 92) = TBCN.Text
TB.Cells(aZelle, 103) = TBCY.Text
TB.Cells(aZelle, 114) = TBDJ.Text
TB.Cells(aZelle, 125) = TBDU.Text
TB.Cells(aZelle, 136) = TBEF.Text
TB.Cells(aZelle, 147) = TBEQ.Text
TB.Cells(aZelle, 158) = TBFB.Text
TB.Cells(aZelle, 169) = TBFM.Text
'Produkt ja nein offen
TB.Cells(aZelle, 38) = TBAL.Text
TB.Cells(aZelle, 49) = TBAW.Text
TB.Cells(aZelle, 60) = TBBH.Text
TB.Cells(aZelle, 71) = TBBS.Text
TB.Cells(aZelle, 82) = TBCD.Text
TB.Cells(aZelle, 93) = TBCO.Text
TB.Cells(aZelle, 104) = TBCZ.Text
TB.Cells(aZelle, 115) = TBDK.Text
TB.Cells(aZelle, 126) = TBDV.Text
TB.Cells(aZelle, 137) = TBEG.Text
TB.Cells(aZelle, 148) = TBER.Text
TB.Cells(aZelle, 159) = TBFC.Text
TB.Cells(aZelle, 170) = TBFN.Text
'Auftragsmenge
TB.Cells(aZelle, 40) = TBAN.Text
TB.Cells(aZelle, 51) = TBAY.Text
TB.Cells(aZelle, 62) = TBBJ.Text
TB.Cells(aZelle, 73) = TBBU.Text
TB.Cells(aZelle, 84) = TBCF.Text
TB.Cells(aZelle, 95) = TBCQ.Text
TB.Cells(aZelle, 106) = TBDB.Text
TB.Cells(aZelle, 117) = TBDM.Text
TB.Cells(aZelle, 128) = TBDX.Text
TB.Cells(aZelle, 139) = TBEI.Text
TB.Cells(aZelle, 150) = TBET.Text
TB.Cells(aZelle, 161) = TBFE.Text
TB.Cells(aZelle, 172) = TBFP.Text
'Bemerkungen
TB.Cells(aZelle, 41) = TBAO.Text
TB.Cells(aZelle, 52) = TBAZ.Text
TB.Cells(aZelle, 63) = TBBK.Text
TB.Cells(aZelle, 74) = TBBV.Text
TB.Cells(aZelle, 85) = TBCG.Text
TB.Cells(aZelle, 96) = TBCR.Text
TB.Cells(aZelle, 107) = TBDC.Text
TB.Cells(aZelle, 118) = TBDN.Text
TB.Cells(aZelle, 129) = TBDY.Text
TB.Cells(aZelle, 140) = TBEJ.Text
TB.Cells(aZelle, 151) = TBEU.Text
TB.Cells(aZelle, 162) = TBFF.Text
TB.Cells(aZelle, 173) = TBFQ.Text
MsgBox "Nur Geduld, das speichern ist gleich abgeschlossen !"
'Produkt im Einsatz
If UserForm1.[CBA1].Value = True Then
TB.Cells(aZelle, 31) = "Ja"
Else
TB.Cells(aZelle, 31) = "Nein"
End If
If UserForm1.[CBA2].Value = True Then
TB.Cells(aZelle, 42) = "Ja"
Else
TB.Cells(aZelle, 42) = "Nein"
End If
If UserForm1.[CBA3].Value = True Then
TB.Cells(aZelle, 53) = "Ja"
Else
TB.Cells(aZelle, 53) = "Nein"
End If
If UserForm1.[CBA4].Value = True Then
TB.Cells(aZelle, 64) = "Ja"
Else
TB.Cells(aZelle, 64) = "Nein"
End If
If UserForm1.[CBA5].Value = True Then
TB.Cells(aZelle, 75) = "Ja"
Else
TB.Cells(aZelle, 75) = "Nein"
End If
If UserForm1.[CBA6].Value = True Then
TB.Cells(aZelle, 86) = "Ja"
Else
TB.Cells(aZelle, 86) = "Nein"
End If
If UserForm1.[CBA7].Value = True Then
TB.Cells(aZelle, 97) = "Ja"
Else
TB.Cells(aZelle, 97) = "Nein"
End If
If UserForm1.[CBA8].Value = True Then
TB.Cells(aZelle, 108) = "Ja"
Else
TB.Cells(aZelle, 108) = "Nein"
End If
If UserForm1.[CBA9].Value = True Then
TB.Cells(aZelle, 119) = "Ja"
Else
TB.Cells(aZelle, 119) = "Nein"
End If
If UserForm1.[CBA10].Value = True Then
TB.Cells(aZelle, 130) = "Ja"
Else
TB.Cells(aZelle, 130) = "Nein"
End If
If UserForm1.[CBA11].Value = True Then
TB.Cells(aZelle, 141) = "Ja"
Else
TB.Cells(aZelle, 141) = "Nein"
End If
If UserForm1.[CBA12].Value = True Then
TB.Cells(aZelle, 152) = "Ja"
Else
TB.Cells(aZelle, 152) = "Nein"
End If
If UserForm1.[CBA13].Value = True Then
TB.Cells(aZelle, 163) = "Ja"
Else
TB.Cells(aZelle, 163) = "Nein"
End If
'Muster abgegeben
If UserForm1.[cbb1].Value = True Then
TB.Cells(aZelle, 36) = "Ja"
Else
TB.Cells(aZelle, 36) = "Nein"
End If
If UserForm1.[cbb2].Value = True Then
TB.Cells(aZelle, 47) = "Ja"
Else
TB.Cells(aZelle, 47) = "Nein"
End If
If UserForm1.[cbb3].Value = True Then
TB.Cells(aZelle, 58) = "Ja"
Else
TB.Cells(aZelle, 58) = "Nein"
End If
If UserForm1.[cbb4].Value = True Then
TB.Cells(aZelle, 69) = "Ja"
Else
TB.Cells(aZelle, 69) = "Nein"
End If
If UserForm1.[cbb5].Value = True Then
TB.Cells(aZelle, 80) = "Ja"
Else
TB.Cells(aZelle, 80) = "Nein"
End If
If UserForm1.[cbb6].Value = True Then
TB.Cells(aZelle, 91) = "Ja"
Else
TB.Cells(aZelle, 91) = "Nein"
End If
If UserForm1.[cbb7].Value = True Then
TB.Cells(aZelle, 102) = "Ja"
Else
TB.Cells(aZelle, 102) = "Nein"
End If
If UserForm1.[cbb8].Value = True Then
TB.Cells(aZelle, 113) = "Ja"
Else
TB.Cells(aZelle, 113) = "Nein"
End If
If UserForm1.[cbb9].Value = True Then
TB.Cells(aZelle, 124) = "Ja"
Else
TB.Cells(aZelle, 124) = "Nein"
End If
If UserForm1.[cbb10].Value = True Then
TB.Cells(aZelle, 135) = "Ja"
Else
TB.Cells(aZelle, 135) = "Nein"
End If
If UserForm1.[cbb11].Value = True Then
TB.Cells(aZelle, 146) = "Ja"
Else
TB.Cells(aZelle, 146) = "Nein"
End If
If UserForm1.[cbb12].Value = True Then
TB.Cells(aZelle, 157) = "Ja"
Else
TB.Cells(aZelle, 157) = "Nein"
End If
If UserForm1.[cbb13].Value = True Then
TB.Cells(aZelle, 168) = "Ja"
Else
TB.Cells(aZelle, 168) = "Nein"
End If
'Produkteinsatz zugesagt
If UserForm1.[cbc1].Value = True Then
TB.Cells(aZelle, 39) = "Ja"
Else
TB.Cells(aZelle, 39) = "Nein"
End If
If UserForm1.[cbc2].Value = True Then
TB.Cells(aZelle, 50) = "Ja"
Else
TB.Cells(aZelle, 50) = "Nein"
End If
If UserForm1.[cbc3].Value = True Then
TB.Cells(aZelle, 61) = "Ja"
Else
TB.Cells(aZelle, 61) = "Nein"
End If
If UserForm1.[cbc4].Value = True Then
TB.Cells(aZelle, 72) = "Ja"
Else
TB.Cells(aZelle, 72) = "Nein"
End If
If UserForm1.[cbc5].Value = True Then
TB.Cells(aZelle, 83) = "Ja"
Else
TB.Cells(aZelle, 83) = "Nein"
End If
If UserForm1.[cbc6].Value = True Then
TB.Cells(aZelle, 94) = "Ja"
Else
TB.Cells(aZelle, 94) = "Nein"
End If
If UserForm1.[cbc7].Value = True Then
TB.Cells(aZelle, 105) = "Ja"
Else
TB.Cells(aZelle, 105) = "Nein"
End If
If UserForm1.[cbc8].Value = True Then
TB.Cells(aZelle, 116) = "Ja"
Else
TB.Cells(aZelle, 116) = "Nein"
End If
If UserForm1.[cbc9].Value = True Then
TB.Cells(aZelle, 127) = "Ja"
Else
TB.Cells(aZelle, 127) = "Nein"
End If
If UserForm1.[cbc10].Value = True Then
TB.Cells(aZelle, 138) = "Ja"
Else
TB.Cells(aZelle, 138) = "Nein"
End If
If UserForm1.[cbc11].Value = True Then
TB.Cells(aZelle, 149) = "Ja"
Else
TB.Cells(aZelle, 149) = "Nein"
End If
If UserForm1.[cbc12].Value = True Then
TB.Cells(aZelle, 160) = "Ja"
Else
TB.Cells(aZelle, 160) = "Nein"
End If
If UserForm1.[cbc13].Value = True Then
TB.Cells(aZelle, 171) = "Ja"
Else
TB.Cells(aZelle, 171) = "Nein"
End If
Unload UserForm1
ActiveWindow.ScrollColumn = 1
ActiveWindow.ScrollRow = 1
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Userform speichern
Heiko
Moin Frank
setze nach
Combobox1 = ""
Application.ScreenUpdating = False
und nach
Unload Userform1
Application.ScreenUpdating = True
Das sollte das ganze ein wenig beschleunigen.
Gruß Heiko
PS: Das Forum lebt auch von den Rückmeldungen der Frager!
AW: Daten aus Userform speichern
22.12.2004 09:16:34
Matthias
Hallo Frank,
und wenn an den Zellen noch irgendwelche Formeln hängen (in dem Sinne, dass bei Änderung dieser Zellen eine Berechnung erfolgt), hilft noch dies:
zu Beginn des Makros:
Application.Calculation = xlCalculationManual
und am Ende:
Application.Calculation = xlCalculationAutomatic
und wenn Ereignismakros existieren, die währed der Ausführung des Makros nicht benötigt werden, kannst du noch
Application.EnableEvents = False
an den Anfang und
Application.EnableEvents = True
ans Ende des Makros stellen.
Hier sollten dann aber eventuelle Fehler abgefangen werden:

On Error GoTo ERRHANDLER
Application.EnableEvents = False
' dein Makro
ERRHANDLER:
Application.EnableEvents = True
End Sub
Gruß Matthias
Anzeige
AW: Daten aus Userform speichern
Frank
Hallo Heiko,
das speichern ist etwas schneller geworden. Es dauert aber immer noch über 70 sec.
Gruß Frank
AW: Daten aus Userform speichern
Heiko
Hast du die Infos von Matthias auch schon drin?
Wenn ja und trotzdem nichts geht, stell doch die Tabelle mal hier ein, dann können wir mal schauen woran es liegen könnte.
Gruß Heiko
AW: Daten aus Userform speichern
Frank
Hallo Matthias, hallo Heiko
ich bin begeistert!
Das speichern meiner Daten dauert nun weniger als 2 Sekunden.
Vielen Dank nochmal für die schnelle und sehr gute Hilfe.
Frohe Weihnachten
Gruß Frank
AW: Daten aus Userform speichern - Rückfrage
22.12.2004 11:54:56
Matthias
Hallo Frank,
Wow, das nenne ich eine gute Beschleunigung...
Woran lag es denn, an der Berechnung oder an den Ereignisprozeduren?
Gruß Matthias
Anzeige
AW: Daten aus Userform speichern - Rückfrage
Frank
Hallo Matthias,
es lag an den Berechnungen.
Application.Calculation = xlCalculationManual
hat geholfen.
Gruß Frank

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige