Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Makro funktioniert nicht
#1
Hallo zusammen

Ich bin mit meinem Makro-Latein am Ende 22
Mit dem unten angefügten Makro-Code sollen mittels Button der gleiche Text, welcher in der Eingabemaske hinterlegt wird gleichzeitig in 11 Tabellenblätter hineinkopiert werden.
Leider wir der Text nur in 8 hineinkopiert. Hat jemand anhand des Codes eine Idee warum der Text nicht überall hineinkopiert wird?

Immer bei dieser Zeile wird mit ein Fehler angezeigt > With Worksheets(vTabName(i)). > Ist unten beim Block 'Einfügen in die erste leere Zeile auf allen Zieltabellen'

Code:
Sub GL_Mitglieder()
   '
   ' Pendenz_kopieren Makro
   '
   Dim loLetzteQuelle As Long
   Dim loLetzteZiel As Long
   Dim vTabName As Variant
   Dim i As Integer
   Dim vInput As Variant
   
   vTabName = Array("Marke_Kommunikation", "Americas", "Kundendienst", "Forschung_Entwicklung", "Finance_Administration", "Asia_Pacific", "EMEA", "CEO", "Product_Management", "Corporate_Development", "SCM")  '  Namen der Zieltabellen
   '
   With Sheets("Eingabemaske")
       'feststellen der letzten belegten Zeile in Spalte A (1)
       loLetzteQuelle = .Cells(.Rows.Count, 1).End(xlUp).Row
     
       'die letzte belegte Quell-Zeile wird kopiert
        vInput = .Range("A" & loLetzteQuelle & ":E" & loLetzteQuelle)  'Einlesen der Daten
   End With
   
 
   'Einfügen in die erste leere Zeile  auf allen Zieltabellen
   For i = 0 To UBound(vTabName)
    With Worksheets(vTabName(i))
      'feststellen der letzten belegten Zeile in Spalte A (1)
      loLetzteZiel = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
     .Range("A" & loLetzteZiel).Resize(, 5) = vInput
   End With
  Next
 
End Sub
 
Danke für eure Hilfe
Antwortento top
#2
Hallo,

sind die drei fehlenden Tabellennamen falsch geschrieben (z.B. im Reiter ist noch ein Leerzeichen hinter dem Namen)???
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antwortento top
#3
nein das habe ich auch schon alles kontrolliert.
ich vermute, dass der buchstabe i eine zahl (vermute 8 oder 9) darstellt. denn wenn ich die 3 letzten bereiche (Product_Management", "Corporate_Development", "SCM")  aus dem makro lösche funktioniert es.

Es steht auch die meldung "index ausserhalb des gültigen bereichs".

Leider geht das über meine makro-kenntnisse wie ich diese korrigieren kann damit der text auch noch in die 3 letzten tabellenblätter hinterlegt wird.
Antwortento top
#4
(17.06.2015, 14:16)Lena_88 schrieb: Es steht auch die meldung "index ausserhalb des gültigen bereichs".

das kommt bei mir immer, wenn ich einen anders geschriebenen Tabellennamen (schau mal bei Deinen bei den letzten 3 Tabellen) habe.
Antwortento top
#5
Hallo,

kopiere doch einfach die Tabellennamen (stehen im VBA-Fenster links in Klammern) in Dein Array, und lass das makro laufen bzw. prüfe nach, ob auch keine Leerzeichen irgendwo stehen.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antwortento top
#6
(17.06.2015, 14:39)BoskoBiati schrieb: Hallo,

kopiere doch einfach die Tabellennamen (stehen im VBA-Fenster links in Klammern) in Dein Array, und lass das makro laufen bzw. prüfe nach, ob auch keine Leerzeichen irgendwo stehen.

Die Namen sollten meiner Meinung nach alle stimmen.
Damit nun alles etwas einfache geht, habe ich die Datei hochgeladen

Vielleicht entdeckt ihr den Fehler schneller als ich Blush


Angehängte Dateien
.xlsm   Pendenzenliste_GL_V13.xlsm (Größe: 97,31 KB / Downloads: 4)
Antwortento top
#7
Hallo,

Du solltest vielleicht doch die Dir gegebenen Hinweise beherzigen!
Es sind die Leerzeichen.

Gruß Uwe
Antwortento top
#8
Sorry ich stehe echt auf dem Schlauch! Welche Leerzeichen soll ich den wegnehmen?
Antwortento top
#9
So ich habe den Fehler nun auch gefunden.
Sorry für die Umstände!

Aber vielen lieben Dank für eure Hilfe!
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste