Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Laufzeitfehler "13" Typen unverträglich

37 views
Skip to first unread message

CL

unread,
Nov 22, 2010, 11:58:03 AM11/22/10
to
Hallo Zusammen,
bei dem folgenden Code bekomme ich einen Fehler. Fehler an Position
11. Hat scheinbar was mit Position 8 zu tun. Wenn ich nur "Set rg =
ws.UsedRange" dann funktioniert es.

1.Sub test()
2.Dim wb As Workbook
3.Dim ws As Worksheet
4.Dim rg As Range
5.Dim a As Range
6.Set wb = ThisWorkbook
7.Set ws = wb.Worksheets(1)
8.Set rg = ws.UsedRange.Offset(2,
0).Columns(3).Resize(ws.UsedRange.Rows.Count - 2, 1)
9.rg.Interior.Color = vbGreen
10.For Each a In rg
11. MsgBox a.Value
12.Next a
13. End Sub

Vielen Dank
MI

Claus Busch

unread,
Nov 22, 2010, 1:37:07 PM11/22/10
to
Hallo MI,

Am Mon, 22 Nov 2010 08:58:03 -0800 (PST) schrieb CL:

> 8.Set rg = ws.UsedRange.Offset(2, 0).Columns(3).Resize(ws.UsedRange.Rows.Count - 2, 1)

warum Offset und dann columns(3)? Warum nicht gleich
Set rg = ws.UsedRange.Columns(5).Resize(ws.UsedRange.Rows.Count - 2, 1)

> 10.For Each a In rg

Probiers mal mit:
For Each a In rg.Cells


Mit freundlichen Grüssen
Claus Busch
--
Win XP Prof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2

Claus Busch

unread,
Nov 22, 2010, 1:39:52 PM11/22/10
to
Hallo MI

Am Mon, 22 Nov 2010 19:37:07 +0100 schrieb Claus Busch:

>> 8.Set rg = ws.UsedRange.Offset(2, 0).Columns(3).Resize(ws.UsedRange.Rows.Count - 2, 1)
> warum Offset und dann columns(3)? Warum nicht gleich
> Set rg = ws.UsedRange.Columns(5).Resize(ws.UsedRange.Rows.Count - 2, 1)

sorry, mein Fehler. Hatte gelesen Offset(0,2)

CL

unread,
Nov 23, 2010, 4:39:36 AM11/23/10
to

Vielen Dank für die Antwort. Mit rg.cells hat es funktioniert! Aber
warum? Wo ist der Unterschied von rg vs. rg.cells?
rg ist doch ein Range object. Die Schleife sollte doch eigentlich alle
Mitglieder dieser Gruppe einzeln abgreifen.

MI

Claus Busch

unread,
Nov 23, 2010, 6:59:08 AM11/23/10
to
Hallo CL,

Am Tue, 23 Nov 2010 01:39:36 -0800 (PST) schrieb CL:

> Mit rg.cells hat es funktioniert! Aber
> warum? Wo ist der Unterschied von rg vs. rg.cells?
> rg ist doch ein Range object. Die Schleife sollte doch eigentlich alle
> Mitglieder dieser Gruppe einzeln abgreifen.

Das liegt an deiner Zuweisung f�r rg.
Probiers mal so f�r rg:
With ws
Set rg = .Cells(3, 3).Resize(.UsedRange.Rows.Count - 2, 1)
End With
Dann funktioniert auch for each a in rg


Mit freundlichen Gr�ssen

0 new messages