Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehlermeldung bei Paste.Special

Forumthread: Fehlermeldung bei Paste.Special

Fehlermeldung bei Paste.Special
07.03.2005 14:39:33
Tobias
Hallo nochmal :)
Nun ein anderes Problem:
Ich habe folgenden Code:
Range("IA1").Select
ActiveCell.FormulaR1C1 = "1"
Selection.Copy
Selection.ClearContents
Application.Columns(sref).EntireColumn.Select
Selection.PasteSpecial Paste:=xlAll, Operation:=xlMultiply, SkipBlanks:= _
True, Transpose:=False
Dieser Code markiert eine Spalte und multipliziert die Werte dort mit 1 durch (diese 1 wurde in IA1 eigegeben, kopiert und soll zum multiplizieren verwendet werden). Wenn ich das Makro nun aber ausfuehre, bekomme ich einen Fehler namens "Anwendungs- oder objektorientierter Fehler".
Was ist hier falsch?
Ausserdem moechte ich nicht die ganze Spalte bis 65535 markieren, sondern nur bis zum letzten Datensatz. Any ideas?
Danke im Voraus
Tobias
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehlermeldung bei Paste.Special
07.03.2005 19:00:53
Herbert
Hallo Tobias,
ein Ansatz für eine Spalte:


Sub multipl()
Dim lz&
lz = Cells(Rows.Count, 2).End(xlUp).Row
[A1] = 2
[A1].Copy
Range("b1:b" & lz).PasteSpecial Operation:=xlMultiply
[A1].ClearContents
End Sub

     Gruß Herbert
Anzeige
AW: Fehlermeldung bei Paste.Special
08.03.2005 08:48:45
Tobias
Hallo Herbert und die anderen,
erstmal danke fuer deine Idee, aber so ganz wills noch nich.
Ich hab den Code folgendermaßen umgeformt:

Private Sub CommandButton1_Click()
Dim lz&
lz = Cells(Rows.Count, 2).End(xlUp).Row
[A1] = 1
[A1].Copy
Range(sref & "1:" & sref & lz).PasteSpecial Operation:=xlMultiply
[A1].ClearContents
End Sub

Wobei sref der Name der Spalte ist, in der ich etwas verarbeiten will; er wird folgendermaßen ausgelesen:
If Not ComboBox1.ListIndex = -1 Then
sref = ComboBox1.ListIndex + 1
End If
Nun geht dein Code zwar so weit, und markiert nach unten hin nur bis zum letzten Datensatz, nach rechts aber geht er bis zum Ende des Bereichs von Excel. Ich moechte aber, dass er dort aufhoert, wo auch rechts der letzte Datensatz steht.
Gruss
Tobias
Anzeige
AW: Fehlermeldung bei Paste.Special
08.03.2005 23:26:11
Herbert
die Variable "sref" kann ich nicht testen...


Sub multipliz_in_Bereich()
Dim As Byte, ls As Byte, c As Range
Dim lz&, lzB As Byte, ber As Range
Application.ScreenUpdating = False
For i = 1 To 100
  ls = Cells(i, 255).End(xlToLeft).Column
  Cells(i, 256) = ls
Next
  lzB = WorksheetFunction.Max([iv1:iv100])
  lz = Cells(Rows.Count, 2).End(xlUp).Row
  
  [A1] = 2
  [A1].Copy
 Set ber = Range(Cells(1, sref), Cells(lz, lzB))
     ber.PasteSpecial Operation:=xlMultiply
  
For Each In ber
 If c = 0 Then c = ""
Next
With ActiveSheet.[A1]
    .ClearContents
    .Select
End With
Application.ScreenUpdating = True
End Sub

     gruß Herbert
Anzeige
Danke, hat geklappt (o.T.)!
09.03.2005 09:33:49
Tobias
Servus!
Vielen lieben Dank, funktioniert perfekt :)
Gruss

Tobias
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige