Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1868to1872
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
Inhaltsverzeichnis

Range(„A1“) aus anderer Tabelle auswähle

Range(„A1“) aus anderer Tabelle auswähle
19.02.2022 00:25:37
Siegfried
Ich brauche mal wieder etwas Hilfe!
Wie kann ich in VBA eine bestimmte Zelle auswählen, ohne in diesem Tabellenblatt jedoch zu sein.
Mein Gedanke wäre dazu
  • Sheets(AUFZNAME).Range("N500").Select
  • gewesen, mit AUFZNAME ist der Tabellenblattname deklariert. Auf diese Art bekomme ich aber immer den Laufzeitfehler 1004 die Select-Methode des Range-Objektes konnte nicht ausgeführt werden.
    Von dieser Position Range(‘‘N500‘‘) sollte dann mit
  • Selection.End(xlUp).Select
  • der letzte eingetragene Wert kopiert werden, welcher dann wo anders eingetragen wird/werden soll, ohne jetzt wieder mit
  • Sheets(nnnn ).Select
  • ständig hin und her schalten zu müssen.
    Ich hoffe mir kann da einer von Euch Wissenden wieder weiterhelfen.
    LG Siegfried

    7
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 01:07:42
    Matthias
    Hallo,
    Du musst logischer denken!
    Wie kann ich in VBA eine bestimmte Zelle auswählen, ohne in diesem Tabellenblatt jedoch zu sein.
    Mein Gedanke wäre dazu
    Sheets(AUFZNAME).Range("N500").Select
    gewesen, mit AUFZNAME ist der Tabellenblattname deklariert. Auf diese Art bekomme ich aber immer den Laufzeitfehler 1004 die Select-Methode des Range-Objektes konnte nicht ausgeführt werden.
    Das ist die Logik!


    Das ist genau so als ob Du in Deiner Wohnung im Flur stehst und in der Wohnstube den Tisch anfassen willst. Geht eben nicht, da Du Dich nicht dort befindest!
    Korrekt Referenzieren heißt hier die Lösung.
    Dazu gibt es viele Einträge im Archiv.
    Gruß Matthias
    Anzeige
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 08:54:48
    RPP63
    Moin!
    Zunächst mal musst Du überhaupt nichts auswählen.
    https://www.online-excel.de/excel/singsel_vba.php?f=78
    
    Sheets(AUFZNAME).Range("N500").End(xlUp).Offset(1, 0).Value = "Rhabarber"
    
    Zu Deiner (nunmehr überflüssigen) Frage:
    Die Select-Methode funktioniert nicht tabellenübergreifend! Dafür gibt es:
    
    Application.Goto Tabelle2.Range("A1048576").End(xlUp).Offset(1, 0)
    
    Gruß Ralf
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 11:31:42
    Gerd
    
    Sub Makro2()
    Dim AUFZ As String
    AUFZ = "DeinBlattname"
    ActiveSheet.Range("A1").Value = Worksheets(AUFZ).Cells(Worksheets(AUFZ).Rows.Count, "N").End(xlUp).Value
    End Sub
    

    Anzeige
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 13:38:46
    Siegfried
    Hallo Matthias L, RPP63 und Gerd L,
    eure Anregungen sind einfach traumhaft, kann damit wieder einiges dazulernen, nur er macht es leider nicht wie ich es möchte/brauchen würde.
    Ich muss hier z.B. prüfen ob Werte bereits eingetragen sind oder er mit (xlUp) an den Eintrag in Zeile 12 ankommt
  • If Sheets(AUFZNAME).Range("N500").End(xlUp).Offset(1, 0) = "Mo-Jh" Then

  • dann muss ein Wert aus einem anderen Tabellenblatt genommen werden, wenn nicht "Mo-Jh" dann eben den Wert durch
  • ActiveCell.Copy

  • Habe mir vor beiden Bedingungen die Abfrage
  • xEnd = ActiveCell.Row
  • gesetzt um eben zu prüfen können welche dies ist, kommt leider immer eine 6 heraus, müsste/sollte aber 12 oder höher ergeben.
    Was mache ich oder verstehe ich da falsch?
    Habe mir unmittelbar davor auch noch mit
  • oldSelect = ActiveSheet.Name
  • das momentan offene Tabellenblatt abgefragt, ist natürlich nicht das AUFZNAME, daher für mich nun einmal die Erklärung warum mir xEnd die 6 bringt = die Zellenposition im andern Tabellenblatt, was ist da bei mir falsch?
    LG Siegfried
    Anzeige
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 14:57:34
    Siegfried
    So eine Korrektur habe ich vorgenommen, mit welcher nun die Abfrage "(xlUp)" wie gewünscht funktioniert, siehe
  • If Sheets(AUFZNAME).Range("N500").End(xlUp) = "Mo-Jh" Then
  • , nur befürchte ich wenn ich also nicht in der AUFZNAME mich befinde das bei der Abfrage
  • ActiveCell.Copy
  • nicht das richtige Ergebnis herauskommt, wie müsste ich diese Abfrage modifizieren um den Inhalt aus der AUFZNAME zu bekommen?
  • If Sheets(AUFZNAME).Range("N500").End(xlUp) = "Mo-Jh" Then
    Range("Regie!L33").Copy ' Mo-Jh Eintrag vom Mo Jänner
    Else
    ActiveCell.Copy ' Wert aus Spa N letzte geb. KW kopieren
    End If
    Sheets(AUFZNAME).Range("M1").PasteSpecial xlPasteValues ' Wert letzte geb. KW einfügen
    Application.CutCopyMode = xlCopy

  • LG Siegfried
    Anzeige
    AW: Range(„A1“) aus anderer Tabelle auswähle
    19.02.2022 16:18:10
    Siegfried
    Hallo Gerd L,
    habe nun mit deiner letzten Anregung
  • Sheets(AUFZNAME).Range("M1").Value = Worksheets(AUFZNAME).Cells(Worksheets(AUFZNAME).Rows.Count, "N").End(xlUp).Value

  • den Ersatz für
  • ActiveCell.Copy
  • gefunden, die Frage für mich, gibt es da nichts einfacheres als Ersatz, da muss ich jetzt einiges umbauen um mir so manchen wechseln bei den Tabellenblättern zu ersparen.
    LG Siegfried
    AW: Range(„A1“) aus anderer Tabelle auswähle
    20.02.2022 08:36:51
    Gerd
    Hallo Siegfried,
    du kannst natürlich auch die Copy-Methode nehmen.
    
    Sub Test()
    Dim Quelle As Range
    Dim Ziel As Range
    With Sheets(AUFZNAME)
    Set Quelle = .Cells(.Rows.Count, "N").End(xlUp)
    Set Ziel = .Range("M1")
    End With
    If Quelle.Value  "Mo-Jh" Then
    Quelle.Copy
    Ziel.PasteSpecial xlPasteValues
    Application.CutCopyMode = False
    Else
    End If
    Set Ziel = Nothing: Set Quelle = Nothing
    End Sub
    
    Gruß Gerd
    Anzeige

    301 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige