GOOGLE ADS

Freitag, 29. April 2022

Ich versuche, eine Schaltfläche zum Speichern in einem vorhandenen Formular zu erstellen. Die Daten, die gespeichert werden müssen, werden in eine Tabelle verschoben, die sich auf einem anderen Blatt befindet

Ich versuche, eine Schaltfläche "Speichern" in einem vorhandenen Formular auf VBA zu erstellen. Die zu speichernden Daten gehen in eine Tabelle, die sich auf einem anderen Blatt befindet, das eine Tabelle enthält. Ich bin mir nicht sicher, warum mein Code nicht funktioniert. Hat jemand eine Ahnung, was ich falsch mache?

Private Sub BtnGuardar_Click()
Dim ws As Worksheet
Dim tbl As ListObject
Dim newrow As ListRow

Set ws = ThisWorkbook.Sheets("RAW_Data")
Set tbl = ws.ListObjects("RawData")
If FechaContable = "" Then
MsgBox ("Debe ingresar la FechaContable"), vbExclamation, "Cifras"
Else
If Monto = "" Then
MsgBox ("Debe ingresar monto"), vbExclamation, "Cifras"
Else
If cboFormaPago = "" Then
MsgBox ("Debe ingresar forma de pago"), vbExclamation, "Cifras"

Set newrow = tbl.ListRows.Add
With newrow

.Range(1) = RegistroID
.Range(2) = Monto
.Range(3) = FechaContable
.Range(4) = Mes
.Range(5) = Ano
.Range(6) = "INGRESOS"
.Range(7) = cboFormaPago
.Range(8) = cboDetalles
.Range(9) = ObservacionesReg
.Range(15) = Format(Date, "DD/MM/YYYY")
.Range(16) = Application.UserName
End With
ActiveWorkbook.Save
Call limpiar_campo
MsgBox ("Registros Ingresados con Exito"), vbInformation, "CIFRAS"
End If
End If
End If
End Sub


Lösung des Problems

Dies kann relevant sein - https://stackoverflow.com/a/40442874/478884

Ich konnte einen Absturz mit einem Benutzerformular reproduzieren, das eine Listbox enthielt, deren RowSourceSatz auf eine der Spalten in einem Listenobjekt festgelegt war: Beim Hinzufügen einer neuen Zeile stürzte Excel nach ein paar Sekunden ab.

Der verlinkte Beitrag hat die Lösung: Trennen Sie die Verknüpfung der Steuerelemente, RowSourcebevor Sie die Zeile hinzufügen, und verknüpfen Sie sie dann erneut.

Keine Kommentare:

Kommentar veröffentlichen

Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...