Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1400to1404
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Zellen mit einer List vergleichen
08.01.2015 14:38:39
Christian
Hallo,
ich möchte das Bereich E9:E500 (Tabellenblatt_2) mit einer List vergleichen (Tabellenblatt_1 - N56:N84). Wenn die Daten übereinstimmen, dann möchte ich die Spalten von G bis L in der gleichen Reihe löschen. Ich habe schon ein Makro geschrieben, aber das bezieht nur auf ein Tabellenblatt.
Quellcode
1.

Private Sub CommandButton3_Click()
2.
3.Application.ScreenUpdating = False
4.Application.Calculation = xlCalculationManual
5.
6. Dim i As Integer
7.     With Sheets("Plan")
8.         For i = 9 To 500
9.             If .Cells(i, 5) = "Samstag" Then
10.                 .Cells(i, 7) = vbNullString
11.                 .Cells(i, 8) = vbNullString
12.                 .Cells(i, 9) = vbNullString
13.                 .Cells(i, 10) = vbNullString
14.                 .Cells(i, 11) = vbNullString
15.                 .Cells(i, 12) = vbNullString
16.             End If
17.         Next
18.     End With
19.
20.Application.ScreenUpdating = True
21.Application.Calculation = xlCalculationAutomatic
22.
23.End Sub
Könnt ihr mir Hinweise geben?
Vielen Dank im Voraus.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen mit einer List vergleichen
08.01.2015 14:56:37
Rudi
Hallo,
Sub Vergleich()
Dim vRow, R As Range
For Each R In Sheets("Tabelle1").Range("N56:N84")
With Sheets("Tabelle2")
vRow = Application.Match(R, .Range("E9:E500"), 0)
If Not IsError(vRow) Then
.Range(.Cells(vRow + 8, 7), .Cells(vRow + 8, 12)).ClearContents
End If
End With
Next R
End Sub
Gruß
Rudi

AW: Zellen mit einer List vergleichen
08.01.2015 15:04:08
Daniel
Hi
vielleicht so:
Sub test()
With Sheets("Tabellenblatt_2").Range("X9:X500")
.Formula = "=IF(CountIf(Tabellenblatt_1!$N$56:$N$84,E9)=0,false,1)"
If WorksheetFunction.Sum(.Cells) > 0 Then _
Intersect(.Worksheet.Range("G:L"), _
.SpecialCells(xlCellTypeFormulas, 1).EntireRow). _
ClearContents
.ClearContents
End With
End Sub
der Code kennzeichnet zuerst alle Zeilen die gelöscht werden sollen in einer Hilfsspalte mit einer Formel (falls die Spalte X anderweitig belegt ist, bitte andere wählen)
und selektiert dann über das Formelergebnis die Zellen und löscht die Inhalte.
Gruß Daniel
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige