Registriert seit: 23.01.2015
Version(en): 2007
hallo
ich habe hier begonnen, ein makro zu schreiben:
Sub loeschen2()
'
' Makro2 Makro
'
Dim a#
Dim b#
a# = 1
b# = 2
'Start
start:
Range("s" & a#).Select
If (ActiveCell.Value = "Ende") Then
MsgBox ("Ende")
Exit Sub
End If
Range("s" & a#).Select
Selection.copy
Range("t" & a#).Select
a = Range("t" & b#).Value
ActiveSheet.Paste
vergleich:
(AAA: gehört nicht zum makro)
Range("s" & a#).Select
a = Range("s" & a#).Value
b = Range("t" & a#).Value
If a = b Then
a# = a# + 1
b# = b# + 1
GoTo vergleich
Else
GoTo start
End If
Bei Überprüfung kommt in der Zeile AAA:
die Meldung
Laufzeitfehler 1004
Die Methode "Range" für das Objekt "_Global" ist fehlgeschlagen.
Was ist da falsch????
Registriert seit: 14.04.2014
Morgen,
a = Range("t" & b#).Value
liest den Wert aus Spalte T aus und nimmt den als neuen Zeilenindex für das nachfolgende Range("s" & a#).Select
Ziemlich wahrscheinlich ist im Fehlerfall a = 0.
Schreibe vielleicht mal besser was Du denn überhaupt machen möchtest?
cu, Bernd
Registriert seit: 23.01.2015
Version(en): 2007
(23.01.2015, 10:19)bst schrieb: Morgen,
a = Range("t" & b#).Value
liest den Wert aus Spalte T aus und nimmt den als neuen Zeilenindex für das nachfolgende Range("s" & a#).Select
Ziemlich wahrscheinlich ist im Fehlerfall a = 0.
Schreibe vielleicht mal besser was Du denn überhaupt machen möchtest?
cu, Bernd
ich habe eine Spalte mit aufsteigenden Zahlen
Manche Zahlen sind doppelt
das Makro fängt oben an und kopiertt den Wert in die DSpalte daneben
Dann schaut das Makro ob der nachfolgende Wert geich ist
Wenn ja nächste Zeile wenn nein woieder rüberkopieren
Ich will also eine Zahlenspalte generieren, in der keine doppelten Zahlen mehr sind
Registriert seit: 14.04.2014
Hi,
nimm vielleicht in die oberste Zeile der Quell-Spalte eine Überschrift. Und dann einen Spezialfilter, an eine andere Stelle kopieren ohne Duplikate. Fertig.
cu, Bernd
--
Code:
Option Explicit
Sub Makro1()
'
' Makro1 Makro
' Makro am 23.01.2015 von bst aufgezeichnet
'
'
Range("S1:S13").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"T1"), Unique:=True
End Sub
Daraus mache dann vielleicht so etwas ähnliches.
Code:
Sub x()
Columns("S:S").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("T1"), Unique:=True
End Sub
Folgende(r) 1 Nutzer sagt Danke an bst für diesen Beitrag:1 Nutzer sagt Danke an bst für diesen Beitrag 28
• amadeus_ms
Registriert seit: 01.11.2014
Version(en): 2007, 2010
Hi,
probier es mal so.
Code:
Sub Unikate()
Dim Blatt As Worksheet
Dim Zelle As String
Set Blatt = ActiveSheet
Blatt.Columns(19).AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=Blatt.Range("T1"), Unique:=True
End Sub
Ich habe das her mal getestet.
Arbeitsblatt mit dem Namen 'Tabelle1' |
| A | B |
1 | 1 | 1 |
2 | 2 | 2 |
3 | 3 | 3 |
4 | 5 | 5 |
5 | 3 | 6 |
6 | 2 | 9 |
7 | 6 | 10 |
8 | 9 | 12 |
9 | 10 | 11 |
10 | 12 | 55 |
11 | 10 | |
12 | 11 | |
13 | 55 | |
Gruß
Max
Folgende(r) 1 Nutzer sagt Danke an Max für diesen Beitrag:1 Nutzer sagt Danke an Max für diesen Beitrag 28
• amadeus_ms