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

Range-Variable mal mit "," mal mit ";"

Range-Variable mal mit "," mal mit ";"
02.01.2008 10:36:00
Oliver
Hallo und ein gutes neues Jahr 2008,
ich habe ein Problem mit der Zuweisung eines Bereichs an eine Range-Variable.
Ich weise diese wie folgt einen Bereich zu:

Sub Zuweisen()
set rn_S = ws_S.range("A2, B2")
End Sub



Sub Adresse()
msgbox ws_A.Range(rn_S.address)
End Sub


Die Variablen ws_S, ws_A und rn_S sind global in dem AddIn definiert und dort auch zugewiesen.
Wenn ich nun den Zeil "Zuweisen" ablaufen lasse, dann kommt ab und an der Laufzeitfehler "1004 - Anwendungs- oder objektdefinierter Fehler". Wenn ich nun das "," durch ein ";" ersetze, dann läuft das Programm weiter. Allerdings bekomme ich dann bei dem Modul Adresse auch die Fehlermeldung, die sich dann umgehen lässt, wenn ich AddressLocal einsetze.
Wenn ich allerdings von vornherein ein ";" statt dem "," verwende, dann kommt sofort der Laufzeitfehler beim Starten des Programms.
Kennt jemand dieses Problem und weiß hier abhilfe?
Gruß,
Oliver.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range-Variable mal mit "," mal mit ";"
02.01.2008 10:43:00
Hajo_Zi
Hallo Oliver,
warum schreibst Du nicht range("A2: B2") ?

AW: Range-Variable mal mit "," mal mit ";"
02.01.2008 10:58:33
Oliver
Hallo Hajo,
sorry, das war mein Fehler. Ich hätte schreiben sollen:
Set rn_S = ws_S.range("A2:A4, A6")
Gruß,
Oliver.

AW: Range-Variable mal mit "," mal mit ";"
02.01.2008 12:56:00
Erich
Hallo Oliver,
was soll
msgbox ws_A.Range(rn_S.address)
anzeigen, wenn rn_S ein Bereich mit mehreren Zellen ist?
Vielleicht die Summe? Oder sollte MsgBox die Inhalte verketten?
So ist das nicht definiert.
Probier mal (in einer neuen Mappe mit zwei Blättern):

Option Explicit
Dim rn_S As Range
Dim ws_S As Worksheet
Dim ws_A As Worksheet
Sub Zuweisen()
Set ws_S = Sheets(1)
Set ws_A = Sheets(2)
ws_A.Cells(2, 1) = 1
ws_A.Cells(2, 2) = 100
Set rn_S = ws_S.Range("A2, B2")
End Sub
Sub Adresse()
MsgBox rn_S.Address
MsgBox ws_A.Range(rn_S.Address).Address
MsgBox WorksheetFunction.Sum(ws_A.Range(rn_S.Address))
' MsgBox ws_A.Range(rn_S.Address) kann nicht funzen - wie soll MsgBox mehrere Zellen zeigen?
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Range-Variable mal mit "," mal mit ";"
02.01.2008 13:24:37
Oliver
Hallo Erich,
danke für den Hinweis. Ich hatte bei der msgbox noch vergessen hinten ".address" zu schreiben.
Den Fehler habe ich zwischenzeitlich auch gefunden. Er tritt dann auf, wenn ich die Variable ws_S über die Speicherprozedur der Datei nochmals fülle. Habe jetzt was drumrum gebastelt.
Gruß,
Oliver.

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige