19.12.2019, 10:47
(Dieser Beitrag wurde zuletzt bearbeitet: 19.12.2019, 10:58 von WillWissen.
Bearbeitungsgrund: Codetags
)
Hallo Zusammen,
ich bräuchte da mal wieder eure hilfe =)
Ich habe in dem Sheet(Stationen) eine Liste.
In anderen Sheets (mit den Namen "1" "2" "3" usw.) werden Zeilen durch "=Stationen!C236" kopiert.
Im Sheet(Stationen) möchte ich eine neue Zeile hinzufügen, die wiederum in allen anderen Sheets(1,2,3 usw.) automatisch hinzugefügt wird, aber nur dort wo die oberste und unterste Zeile identisch ist.
" ist ein bisschen kompliziert "
Im folgendem VB habe ich das schon soweit erreicht, das er mir nur in einem Sheet1 diese Zeile kopiert. Mir fehlt aber das er alle Sheets (1,2,3 usw.) überprüft -> Schleife
Ich hoffe ihr könnt mir das weiterhelfen =)
______________________________________________________________________________________________________
Vielen Dank im voraus
Gruß Homann
ich bräuchte da mal wieder eure hilfe =)
Ich habe in dem Sheet(Stationen) eine Liste.
In anderen Sheets (mit den Namen "1" "2" "3" usw.) werden Zeilen durch "=Stationen!C236" kopiert.
Im Sheet(Stationen) möchte ich eine neue Zeile hinzufügen, die wiederum in allen anderen Sheets(1,2,3 usw.) automatisch hinzugefügt wird, aber nur dort wo die oberste und unterste Zeile identisch ist.
" ist ein bisschen kompliziert "
Im folgendem VB habe ich das schon soweit erreicht, das er mir nur in einem Sheet1 diese Zeile kopiert. Mir fehlt aber das er alle Sheets (1,2,3 usw.) überprüft -> Schleife
Ich hoffe ihr könnt mir das weiterhelfen =)
______________________________________________________________________________________________________
Code:
Sub Zeile_Einfuegen()
Dim zeile As Integer 'gewählte zelle
zeile = ActiveCell.Row
'drei Zellen markieren
With ActiveCell
Range(.Offset(0, -2), .Offset(0, 0)).Select
End With
'neue Zellen in Tab Stationen einfügen
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
zeile = zeile + 1 'Zeile ist nun nach unten gerutscht
'Schleife MTM 1 bis 5
'in MTM Tab nach Formel suchen
Dim zeilen_nr As Integer 'zeile in MTM
zeilen_nr = finde_eintrag(zeile) 'Funktion Einträge suchen
'Zelle in MTM auswählen
Sheets("1").Select 'muss noch als schleife
Range("F" & zeilen_nr).Select
'Zellen markieren A bis F
With ActiveCell
Range(.Offset(0, -5), .Offset(0, 0)).Select
End With
'neue Zellen einfügen
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
'in F Verlinkung zu Stationen Zelle erstellen
Sheets("1").Range("F" & zeilen_nr) = "=Stationen!C" & zeile - 1 'Muss noch als schleife
'zu Tab Stationen zurück
Sheets("Stationen").Activate
End Sub
'Eintraege suchen
Private Function finde_eintrag(zeile As Integer) As Integer
Dim zelleninhalt As String
Dim referenzzeile As Integer
finde_eintrag = 0
anzahl_zeilen = WorksheetFunction.CountA(Sheets("1").Range("F:F")) 'muss noch als schleife
For i = 10 To anzahl_zeilen 'suche alle zeilen in MTM ab
zelleninhalt = Sheets("1").Range("F" & i).Formula 'muss noch als Schleife
zelleninhalt = Mid(zelleninhalt, 13, 3) 'betrachte nur die zeilennummer aus der Funktion
referenzzeile = zelleninhalt
'checke inhalt
If referenzzeile = zeile Then
finde_eintrag = i
Else
End If
Next i
End Function
Vielen Dank im voraus
Gruß Homann