.PasteSpecial xlPasteValues +Tabellenblattwechsel
17.04.2015 11:33:10
Maria
ich habe ein Verständnisproblem und hoffe auf eure Unterstützung, weil ich in der Recherche im Netz nichts dazu gefunden habe...
Ich verwende in meinem Code mehrfach folgende Funktion für unterschiedliche Bereiche / Formeln (also nicht immer index, sondern auch vlookup etc.):
With wsData.Range(ColumnToLetter(ColNr) & FirstRow & ":" & ColumnToLetter(ColNr) & x)
.FormulaR1C1 = "=index('[" & wbA & "]" & Workbooks(wbA).Sheets(1).Name & "'!c" & ColwbANr & ", _
RC" & ColTreffer & ",0)"
.Copy
.PasteSpecial xlPasteValues
End With
Application.CutCopyMode = False
Alle Namen sind global benannt und der Code funktioniert soweit einwandfrei!
Einziges Manko: Manchmal wechselt er in dem Code, den ich aus Tabellenblatt wsMenu starte, auf das Tabellenblatt wsData und zwar genau in der Zeile .pasteSpecial xlPasteValues (getestet über Schritt für Schritt Codedurchlauf mit F8).
Und es passiert wenn ich Schritt für Schritt durchgehe eben nicht immer...
Gibt es hierfür irgendeine Erklärung?
Bei meiner vorherigen Version mit .value = .value, habe ich übrigens das Problem nicht feststellen können, der Code hat aber deutlich länger benötigt (es sind auch viele Zeilen!).
Natürlich kann ich das Problem lösen, indem ich am Ende des Codes ein wsMenu.Activate einbaue, aber ich habe irgendwo mal gelesen, das Acitvate und Select in 99% der Fälle überflüssig ist und verwende es daher sonst nie...
... und ich würde gerne einfach verstehen, warum er in der Zeile das Tabellenblatt wechselt!
Vielen Dank für jeglichen Hinweis und Tipp!
Schöne Grüße
Maria