Method 'Cells'of Object '_Global' failed

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Method 'Cells'of Object '_Global' failed
von: Tobias
Geschrieben am: 06.11.2003 08:47:55

Hi @all!

wenn ich von dieser Sub (in sheet1):

Public


Sub TEURSuchen(n As String)
  Dim arrayTCVTEUR() As Integer
  Dim i As Integer, j As Integer, k As Integer, z As Integer
    
  z = zeile(n)  <=== hier!!!
  k = 0
  datenTEUR = "=("
  For i = 1 To Range("z40").End(xlToRight).Column 'Zeile absuchen
    For j = 1 To Range("a500").End(xlUp).Row      'Spalte absuchen
     If Cells(i, j).Value = "TEUR" Then
       k = (k + 1)                                'Index des arrays erhöhen
       ReDim Preserve arrayTCVTEUR(k)
       arrayTCVTEUR(k) = Cells(i, j).Column       'Spalten der Werte merken
     End If
   Next
  Next
  For i = 1 To UBound(arrayTCVTEUR)
    datenTEUR = datenTEUR + ("Sheet1!R" & (z) & "C" & (arrayTCVTEUR(i)) & ",")
  Next
  datenTEUR = Left(datenTEUR, Len(datenTEUR) - 1) 'Komma abschneiden
  datenTEUR = datenTEUR + ")"
    
End Sub


auf diese Funktion (in Module1) zugreife:

Option Explicit

Function zeile(was As String) As Integer
Dim i As Integer, j As Integer
  For i = 1 To 100                            'Zeile absuchen
    For j = 1 To 50                           'Spalte absuchen
FEHLER=>  If Cells(i, j).Value = was Then         'Inhalt Zelle mit ges. Wort vergleichen
         zeile = Cells(i, j).Row              'Zeile merken
      End If
    Next
  Next
  
End Function


kommt die fehlermeldung: Method 'Cells'of Object '_Global' failed

was ist falsch? woran liegt das?

thx 4 ur answers!
Bild


Betrifft: AW: Method 'Cells'of Object '_Global' failed
von: Hajo_Zi
Geschrieben am: 06.11.2003 08:52:24

Hallo Tobias

warum ist das erste Makro nicht in einem Modul??

Wie sieht Dein Startmakro aus???

Einige Variablen sind nicht Definiert.

mit folgendem läuft es


Sub Test()
    TEURSuchen (123)
End Sub




Bitte keine Mail, Probleme sollten im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro




Bild


Betrifft: mein project
von: Tobias
Geschrieben am: 06.11.2003 09:09:58

hi!

zuerst die deklarationen:
Public datenDatum As String, datenTEUR As String, datenGewicht As String


dann der command button in dem sheet1, das zuerst aus einer anderen datei kopiert wurde
(es handelt um ein wöchentlich aktualisiertes sheet):

Private Sub CommandButton1_Click()
  changechart ("Andreas Pilger")
End Sub


der button ruft nun changechart auf und übergibt den namen:

Public Sub changechart(name As String)

ActiveSheet.ChartObjects("Chart 1").Activate 'Diagramm aktivieren
ActiveChart.ChartArea.Select
DatumSuchen 'alle Spalten der Datum suchen
ActiveChart.SeriesCollection(1).XValues = datenDatum
TEURSuchen (name) 'alle Spalten von "TEUR" suchen
ActiveChart.SeriesCollection(1).Values = datenTEUR
GewichtSuchen (name) 'alle Spalten mit "gewicht." suchen
ActiveChart.SeriesCollection(2).Values = datenGewicht
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = n 'Diagramm-Titel
End With
springen

End Sub


nun wir TEURSuchen aufgerufen (hier kommt der fehler):

Public Sub TEURSuchen(n As String)
Dim arrayTCVTEUR() As Integer
Dim i As Integer, j As Integer, k As Integer, z As Integer

z = zeile(n) 'function wird aufgerufen -> fehler!!
k = 0
datenTEUR = "=("
For i = 1 To Range("z40").End(xlToRight).Column 'Zeile absuchen
For j = 1 To Range("a500").End(xlUp).Row 'Spalte absuchen
If Cells(i, j).Value = "TEUR" Then
k = (k + 1) 'Index des arrays erhöhen
ReDim Preserve arrayTCVTEUR(k)
arrayTCVTEUR(k) = Cells(i, j).Column 'Spalten der Werte merken
End If
Next
Next
For i = 1 To UBound(arrayTCVTEUR)
datenTEUR = datenTEUR + ("Sheet1!R" & (z) & "C" & (arrayTCVTEUR(i)) & ",")
Next
datenTEUR = Left(datenTEUR, Len(datenTEUR) - 1) 'Komma abschneiden
datenTEUR = datenTEUR + ")"

End Sub


die funktion:
Option Explicit

Function zeile(was As String) As Integer
Dim i As Integer, j As Integer

For i = 1 To 100 'Zeile absuchen
For j = 1 To 50 'Spalte absuchen
FEHLER=> If Cells(i, j).Value = was Then 'Inhalt Zelle mit ges. Wort vergleichen
zeile = Cells(i, j).Row 'Zeile merken
End If
Next
Next

End Function




GewichtSuchenist (fast) gleich aufgebaut wie TEURSuchen....

kann jemand helfen?
thx 4 ur answers!!!


Bild


Betrifft: AW: mein project
von: Tobias
Geschrieben am: 06.11.2003 10:12:04

hi...
kann mir keiner mehr helfen?

liegt es daran, dass das sheet aus einer anderen datei kopiert wurde (wurde mit eglischem excelerstellt)... die neue datei, in der das sheet eingefügt wird wurde mit deutschem excel erstellt. könnte das ein problem sein?

thx 4 ur answers!


Bild

Beiträge aus den Excel-Beispielen zum Thema " Method 'Cells'of Object '_Global' failed"