Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Wert/Variable geht verloren

Wert/Variable geht verloren
31.08.2007 09:59:33
Ingo
Hallo allerseits,
kleines Problem bei der Weitergabe eines Wertes.
Beim Öffnen einer Mappe läuft das erste Makro durch und
findet definitiv einen Wert = Arr_Temp(i, 4)
For i = 1 To UBound(Arr_Temp, 1)
If UCase(Environ("USERNAME")) = Arr_Temp(i, 1) Then
' Sachbearbeiter = Arr_Temp(i, 4)
ThisWorkbook.Sheets("Dat").Cells(2, 4).Value = Arr_Temp(i, 4)
DoEvents
Exit Sub
End If
Next i
Diesen Wert lasse ich mit weiteren Angaben in eine txt schreiben (2.Makro)
Open SERVER & PFAD_PROG_FEHLER & _
"Intern " & Format(Now, "ddmmyyyy hhmmss ") & ".txt" For Output As #1
Print #1, "Datum: " & Format(Now, "dd.mm.yyyy, hh:mm")
Print #1, "User: " & Environ("USERNAME")
Print #1, "Karte: " & Application.UserName
Print #1, "Name: " & ThisWorkbook.Sheets("Dat").Cells(2, 4)
' Print #1, "Name: " & Sachbearbeiter
Print #1, "IP: " & GetIPs()
Print #1, ""
Close #1
Nur, mal taucht Print #1, "Name: " & ... mit einem Wert auf und mal nicht.
Ich habe es auch schon mit einer globalen Variablen versucht,
mit doevents an allen möglichen Stellen, Ergebnis ist immer gleich wie
beschrieben.
Hat jemand eine Idee, warum der Wert so launisch ist ?
Gruß, Ingo

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert/Variable geht verloren
31.08.2007 10:07:00
ede
hallo,
wenn du eine wert in Arr_Temp(i, 4) hast, warum vergleichst du dann auf:
If UCase(Environ("USERNAME")) = Arr_Temp(i, 1)
und nicht auf
If UCase(Environ("USERNAME")) = Arr_Temp(i, 4) ?
gruss

Sorry,... sollte wohl mal F5 drücken :-) o.w.T.
31.08.2007 10:15:05
Ramses
...

AW: Wert/Variable geht verloren
31.08.2007 10:14:15
Ramses
Hallo
da geht nix verloren, sondern es wird vorher wahrscheinlich kein Wert eingetragen.
Hier wird die erste Spalte des Arrays abgefragt
If UCase(Environ("USERNAME")) = Arr_Temp(i, 1) Then
... und hier der Wert aus der vierten Spalte geschrieben.
ThisWorkbook.Sheets("Dat").Cells(2, 4).Value = Arr_Temp(i, 4)
Wie stellst du sicher, dass DORT ein Wert vorhanden ist, bzw. ein Wert (Länge>0 o.ä.) ausgelesen wird ?
Gruss Rainer

Anzeige
AW: Wert/Variable geht verloren
31.08.2007 10:33:00
Ingo
Hallo Rainer
Weil ich die Tabelle für das Array selber erstellt habe.
Es gibt keine leeren Zellen für Arr_Temp(i, 4)
Unterbreche ich das Makro, steht der Wert wie beschrieben
in ThisWorkbook.Sheets("Dat").Cells(2, 4)...oder eben nicht.
Ingo

AW: Wert/Variable geht verloren
31.08.2007 10:42:33
ede
kannst du sichherstellen, das in deinem Arr_Temp(i, 1) alle Environ("USERNAME")) in Groß enthalten sind?, den NULL-Fall hast du nicht abgefangen!
gruss

AW: Wert/Variable geht verloren
31.08.2007 11:18:24
Ingo
Hallo Ede,
Environ("USERNAME") steht absolut immer in groß in der Tabelle.
Ucase nur, da die Karte mit den Daten Groß-und Kleinschreibung ausgeben kann.
Welchen Null-Wert meinst Du ?
Das es keinen Environ("USERNAME") gibt ?
In dem Fall wird der User bereits vorher abgefangen.
Wer bis hierher gekommen ist, steht auch in der Liste.
Ingo

Anzeige
AW: Wert/Variable geht verloren
31.08.2007 11:22:00
ede
ja, dann habe ich auch keinen vorschlag mehr, kannst ja mal testen, ob wirklich bis hierher alles ok ist,
indem du den code so erweiterst:
gefunden = False
For i = 1 To UBound(Arr_Temp, 1)
If UCase(Environ("USERNAME")) = UCase(Arr_Temp(i, 1)) Then
' Sachbearbeiter = Arr_Temp(i, 4)
ThisWorkbook.Sheets("Dat").Cells(2, 4).Value = Arr_Temp(i, 4)
gefunden = True
Exit For
End If
Next i
If Not gefunden Then
ThisWorkbook.Sheets("Dat").Cells(2, 4).Value = "unbekannter Sacharbeiter"
MsgBox "keinen in arr_temp gefunden"
Else
Exit Sub
End If
rückmeldung wäre supergruss

Anzeige
AW: Wert/Variable geht verloren
31.08.2007 12:06:07
Ingo
soweit eingebau - waren auch bereits ein paar zugriffe.
"unbekannt" wirft er wie erwartet nicht aus.
eine systematik scheint sich allerdings abzuzeichnen.
es gibt hier verschiedene chipkarten.
Environ wirft in allen Fällen eine Nummer mit vorgestellten Buchstaben aus.
Application.Username entweder den wert aus environ oder aber den namen im klartext.
wenn environ und application gleich dann ok, wenn unterschiedlich dann das
beschriebene phänomen. ist mir insofern schleierhaft, da immer nur environ genutzt wird
und dies immer den korrekten wert für die überprüfung liefert.

Anzeige
AW: Wert/Variable geht verloren
31.08.2007 12:14:00
ede
na dann verstehe ich die welt auch nicht mehr.
wenn also die for-schleife immer einen findet, dann kann nur noch in weiteren danach laufenden makros (da du ja dieses mit exit sub verlässt) etwas überschrieben werden!
gruss

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige