Thema Datum  Von Nutzer Rating
Antwort
Rot Range setzten
19.01.2017 10:11:50 The_Materialist
Solved
19.01.2017 12:41:57 Gast72729
NotSolved
20.01.2017 13:16:03 Gast91227
NotSolved

Ansicht des Beitrags:
Von:
The_Materialist
Datum:
19.01.2017 10:11:50
Views:
1024
Rating: Antwort:
 Nein
Thema:
Range setzten

Hallo Internet,

 

Ich habe foglendes Problem. Ich möchte durch alle meine Tabellen in meinem Workbook wandern und dabei die dritte Spalte auf einen "Sprung" hin untersuchen. Das Kriterium ist: wenn zwei aufeinander folgende Zellen sich um mehr als 0.1 unterscheiden ist das der Messbeginn (Start). Der Code sieht so aus:

Public Sub find_start()

Dim tbl As ListObject
Dim sht As Worksheet
Dim Start As Range
Dim sec As Long ' for the case of errors in the while loop no crash will occure

' calculate the beginning of the experiment using a treshhold
sec = 0
For Each sht In ThisWorkbook.Worksheets
      For Each tbl In sht.ListObjects
            Set Start = tbl.Range(3, 3) '<=  DIESE ZEILE GIBT DEN FEHLER
            Do While (Start - Start.offeset(-1, 0)) < 0.1
                  Start = Start.Offset(1, 0)
                  sec = sec + 1
                  If sec > 400000 Then
                        Exit Do
                  End If
            Loop
                  Start.Select
                  Range(Selection, Selection.End(xlToRight)).Select
                  Range(Selection, Selection.End(xlDown)).Select
                  Selection.Cut
                  tbl.Range(1, 1).Select
                  ActiveSheet.Paste
      Next tbl
Next sht
End Sub
 
 
Die Zeile in der der Range Start ein Wert zugeordnet werden soll also in diesem Fall die Zeile (3,3) der jeweiligen Tabelle wird der Fehler :
Laufzeitfehler '91':  Objektvariable oder With-Blockvariable nicht festgelegt. 
 
mit 
Set Start= tbl.Range(3,3)

funktionierts auch nicht. Dann weisst das Program mir nur den Wert der Range(3,3) der Variablen Start zu. 

Wie kann ich also wirklich eine Range zuweisen und nicht nur den Wert der Range?

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Range setzten
19.01.2017 10:11:50 The_Materialist
Solved
19.01.2017 12:41:57 Gast72729
NotSolved
20.01.2017 13:16:03 Gast91227
NotSolved