Ich habe das folgende Makro in einem Excel-Blatt - die den Patienten durch ihre Krankenhausnummer identifiziert und setzt den Nachnamen in einer Spalte und das funktioniert gut.VBA Einstellung Wert der Zelle ändert sich nicht Zelle Inhalt in ungeschützten Blatt
Ich muss jetzt mehr Daten in das Blatt einfügen, aber während der Nachname erscheint, die anderen Daten nicht.
Ich habe keine Probleme beim Schreiben in die gleiche Zelle, in die Zellen auf der linken Seite, aber wenn ich versuche, in die Spalten auf der rechten Seite zu schreiben passiert nichts.
Das Blatt ist ungeschützt, es ist kein Fall, in dem der Schrift- und Zellenhintergrund weiß ist. Irgendwelche Ideen?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim Mrn As String
' The variable KeyCells contains the cells that will
' cause an alert when they are changed.
Set KeyCells = Range("C10:C29")
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
Set cn = New ADODB.Connection
Mrn = Target.Text
If Mrn = "" Then
Target.Offset(0, 1).Value = ""
Else
cn.ConnectionString = "MyConnectionString"
cn.Open
Set rs = cn.Execute("Select nhs_surname From nhs_patient_s Where UPPER(nhs_patientid) = '" + UCase(Mrn) + "'")
If rs.EOF Then
Target.Offset(0, 1).Value = "UNKNOWN"
Else
Do While Not rs.EOF
Dim surname As String
surname = rs("nhs_surname")
Target.Offset(0, 1).Value = surname
Target.Offset(, 3).Value = "Now here!!!!"
rs.MoveNext
Loop
End If
End If
End If
End Sub
Btw, benutzen Sie bitte nicht [tag: Makros] Tag, der nicht für VBA ist. – R3uK