Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
25.06.2021 22:20:25 |
kzi |
|
|
Zeilen in anderes Tabellenblatt verschieben |
26.06.2021 01:25:14 |
Gast53316 |
|
|
|
26.06.2021 11:13:11 |
kzi |
|
|
|
26.06.2021 14:02:44 |
Gast21243 |
|
|
|
26.06.2021 23:30:17 |
kzi |
|
|
Von:
Gast53316 |
Datum:
26.06.2021 01:25:14 |
Views:
220 |
Rating:
|
Antwort:
|
Thema:
Zeilen in anderes Tabellenblatt verschieben |
Hm, naja. Könnte man vermutlich so allgemeiner ausdrücken:
Option Explicit
Option Compare Text
Public Sub Test()
Dim wksSource As Excel.Worksheet
Dim wksTarget As Excel.Worksheet
Dim rngTarget As Excel.Range
Dim i As Long
For Each wksSource In ThisWorkbook.Worksheets
'Berücksichtigung der Tabellenblätter
'per Inklude-Verfahren
Select Case wksSource.Name
Case "QA", "NWA", "T1" ', "..."
For i = GetLastCellWithContent(wksSource, "A").Row To 2 Step -1
If wksSource.Name <> wksSource.Cells(i, "A").Value Then
Set wksTarget = GetWorksheet(Name:=wksSource.Cells(i, "A").Value)
If Not wksTarget Is Nothing Then
Set rngTarget = GetLastCellWithContent(wksTarget, "B").Offset(1, -1)
Call wksSource.Rows(i).Cut
Call wksTarget.Paste(Destination:=rngTarget)
Call wksSource.Rows(i).Delete(xlShiftUp)
End If
End If
Next
End Select
Next
End Sub
Public Function GetLastCellWithContent(Worksheet As Excel.Worksheet, Column As Variant) As Excel.Range
Set GetLastCellWithContent = Worksheet.Cells(Worksheet.Rows.Count, Column).End(xlUp)
End Function
Public Function GetWorksheet(Name As String, Optional Workbook As Excel.Workbook) As Excel.Worksheet
On Error Resume Next
If Workbook Is Nothing Then
Set GetWorksheet = ThisWorkbook.Worksheets(Name)
Else
Set GetWorksheet = Workbook.Worksheets(Name)
End If
End Function
Grüße
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
25.06.2021 22:20:25 |
kzi |
|
|
Zeilen in anderes Tabellenblatt verschieben |
26.06.2021 01:25:14 |
Gast53316 |
|
|
|
26.06.2021 11:13:11 |
kzi |
|
|
|
26.06.2021 14:02:44 |
Gast21243 |
|
|
|
26.06.2021 23:30:17 |
kzi |
|
|