Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestimmte Zeile in VBA ansprechen

Forumthread: Bestimmte Zeile in VBA ansprechen

Bestimmte Zeile in VBA ansprechen
03.09.2002 13:08:22
Heinz Ulm
Hallo VBA-Fachleute,

in meiner Taqbelle steht in der Spalte A die Kundennummer. Wenn ich nun einen Datensatz korrigieren will lasse ich mir diesen Datensatz in eine bestimte Tabelle auslesen und in einer anderen Tabelle wird dann die Korrektur durchgeführt. Die korrigierten Daten stehen dann alle in der Zeile 41, welche dann auf die entsprechende Zeile in der Tabelle Kunden zurückkopiert werden soll.
Z.B. möchte ich den Kunden 590 korrigieren, der Datensatz steht in Zeile 92; dieser Wert steht in der Tabelle "Kundendaten" in der Zelle K6
Mit:

Rows("41:41").Select
Selection.Copy
Sheets("Kunden").Select
Rows("?????").Select
Application.CutCopyMode = False

Was müsste anstelle der ????? bei Rows stehen?

Danke im vorraus
Heinz

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 13:12:12
michel
hallo heinz,

ganz nachvollziehbar ist es zwar nicht, aber was würde dagegensprechen (sofern immer in K6 der Wert steht) einfach eine Variable zu definieren:
z= Workbooks("Kundendaten").Range("K6").Value
und dann
Rows(z:z) anzusprechen??

michel

Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 13:33:00
Heinz Ulm
Hallo Michel,

irgended was klappt nicht. Im folgenden Code meckert VBA immer die Zeile Rows("z:z").select an. Egal ob ich die Klammer mit Z:Z oder "Z:Z" schreibe.

Sub Korretur_Kopieren()
'
' Korretur_Kopieren Makro
' Makro am 03.09.2002 von HUlm aufgezeichnet
'

'
z = Worksheets("Kundendaten").Range("K6").Value

Sheets("Datenkorrektur").Select
Rows("41:41").Select
Selection.Copy
Sheets("Kunden").Select
Rows("z:z").Select
End Sub

Was mache ich falsch?

Gruß Heinz

Anzeige
Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 13:47:41
Michael
Wenn ich Dein Problem richtig verstehe, sollen die Daten in die gleiche Zeile, aus der sie ursprünglich herauskopiert wurden, wieder zurückgeschrieben werden.
Wenn dem so ist, dann merke Dir einfach in einer Variablen die Zeilennummer und verwende die Variable beim Zurückschreiben
lass die "" weg.
03.09.2002 13:55:23
Udo RiHü
oT
Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 13:58:09
Heinz Ulm
Hallo Michael,

die zeilennummer habe ich ja, aber wie sage ich es VBA
z ist die Variable

mit Rows("Z:Z")oder Rows(Z:Z) komme ich nicht weiter.

Gruß Heinz

Anzeige
Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 14:03:48
Michael
dim zeile as string
dim nummer as integer
'nummer ist Deine Zeile
zeile = nummer & ":" & nummer
rows(zeile).select
...
Re: lass die "" weg.
03.09.2002 14:06:24
Heinz Ulm
Hallo Udo,

hab ich versucht ging nicht.

Eine andere Frage:

Wie lautet der VBA Code für

Range("A92").select

wenn eine Variable Z die Zeilennummer enthält)

Gruß Heinz

Anzeige
Re: Bestimmte Zeile in VBA ansprechen
03.09.2002 14:11:36
Heinz Ulm
Hallo an alle Helfer,

vielen Dank an alle, insbesondere an Michael, jetzt klappt es.

Danke Heinz

Re: lass die "" weg.
03.09.2002 14:50:15
michel
hallo heinz,

nicht ganz nachvollziehbar, warum die lösung nicht funktionieren soll.....aber für deine neue frage:

nimm anstelle range einfach cells(z,1)

michel

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Bestimmte Zeile in VBA ansprechen


Schritt-für-Schritt-Anleitung

Um eine bestimmte Zeile in VBA anzusprechen, kannst du folgende Schritte befolgen:

  1. Definiere die Variable für die Zeilennummer:

    Dim z As Integer
    z = Worksheets("Kundendaten").Range("K6").Value
  2. Wähle die Zeile aus, die du kopieren möchtest:

    Sheets("Datenkorrektur").Select
    Rows("41:41").Select
    Selection.Copy
  3. Füge den kopierten Inhalt in die Zielzeile ein:

    Sheets("Kunden").Select
    Rows(z & ":" & z).Select
    ActiveSheet.Paste

Damit kannst du mit der Variable z die gewünschte Zeile ansprechen, ohne die Zeilennummer manuell eingeben zu müssen.


Häufige Fehler und Lösungen

  • Fehler: "Rows(z:z).Select" funktioniert nicht:

    • Lösung: Stelle sicher, dass du die Variable nicht in Anführungszeichen setzt. Der richtige Code lautet Rows(z & ":" & z).Select.
  • Fehler beim Zugriff auf eine Zelle mit einer Variable:

    • Lösung: Verwende Cells(z, 1) anstelle von Range("A" & z) für den Zugriff auf eine bestimmte Zelle, wobei z die Zeilennummer darstellt.

Alternative Methoden

Eine alternative Methode, um mit Zeilen und Zellen in VBA zu arbeiten, ist die Verwendung von Cells:

Dim z As Integer
z = Worksheets("Kundendaten").Range("K6").Value
Cells(z, 1).Select ' Wählt die Zelle in der Spalte A der bestimmten Zeile aus

Mit dieser Methode kannst du flexibel auf beliebige Zellen zugreifen und hast zudem die Möglichkeit, sowohl Zeile als auch Spalte variabel zu gestalten.


Praktische Beispiele

  1. Daten von einer bestimmten Zeile kopieren:

    Dim z As Integer
    z = Worksheets("Kundendaten").Range("K6").Value
    Worksheets("Datenkorrektur").Rows("41:41").Copy Destination:=Worksheets("Kunden").Rows(z)
  2. Inhalt einer Zelle in einer bestimmten Zeile ändern:

    Dim z As Integer
    z = Worksheets("Kundendaten").Range("K6").Value
    Worksheets("Kunden").Cells(z, 1).Value = "Neuer Wert"

Tipps für Profis

  • Verwende With-Anweisung: Um den Code lesbarer zu machen, nutze die With-Anweisung. Beispiel:

    With Worksheets("Kunden")
      .Rows(z & ":" & z).Select
      .Paste
    End With
  • Vermeide die Verwendung von Select: Du kannst direkt auf Zellen zugreifen, ohne sie vorher auszuwählen:

    Worksheets("Kunden").Rows(z).Value = Worksheets("Datenkorrektur").Rows(41).Value

FAQ: Häufige Fragen

1. Wie kann ich eine aktive Zelle in VBA ansprechen? Du kannst die aktive Zelle mit ActiveCell ansprechen. Beispiel:

ActiveCell.Value = "Neuer Wert"

2. Wie wähle ich eine ganze Spalte in einer Tabelle aus? Du kannst eine ganze Spalte mit Columns("A:A").Select ansprechen. Für spezifische Tabellen solltest du den Arbeitsblattnamen angeben:

Worksheets("Tabelle1").Columns("A:A").Select

Dieses Tutorial sollte dir helfen, bestimmte Zeilen und Zellen in VBA effektiv anzusprechen und zu bearbeiten.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige