Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Code ändern

Forumthread: Code ändern

Code ändern
30.10.2006 10:45:44
otto
Hi,
wie kann man folgenden Code ändern dass nicht nur 3 Werte aus der gefundenen Zeile kopiert werden, sondern die ganze Zeile.
Zurück dann wieder genau so.
Ich brauche nicht unbedingt die Zeilennummer, in Spalte 27 von "Bestand" steht eine Identnummer die nur einmal vorkommt.
Habe es leider nicht selbst hinbekommen.

Private Sub CB_1_Click()
Dim i As Long, j As Long, zeile As Long
Application.ScreenUpdating = False
If Sheets("Übersicht").OLEObjects("CB_1").Object.Caption = "Suchen" Then
Dim SuchWert As String
SuchWert = Sheets("Übersicht").Cells(1, 2).Value
For i = 1 To Sheets("Bestand").Cells(65536, 1).End(xlUp).Row
If Sheets("Bestand").Cells(i, 1).Value Like SuchWert Then
Sheets("Übersicht").Cells(j + 5, 1).Value = Sheets("Bestand").Cells(i, 1).Row
Sheets("Übersicht").Cells(j + 5, 2).Value = Sheets("Bestand").Cells(i, 1).Value
Sheets("Übersicht").Cells(j + 5, 3).Value = Sheets("Bestand").Cells(i, 2).Value
Sheets("Übersicht").Cells(j + 5, 4).Value = Sheets("Bestand").Cells(i, 3).Value
j = j + 1
End If
Next i
If j > 0 Then Sheets("Übersicht").OLEObjects("CB_1").Object.Caption = "Übernehmen"
Else
For i = 10 To Sheets("Übersicht").Cells(65536, 1).End(xlUp).Row
zeile = Sheets("Übersicht").Cells(i, 1).Value
Sheets("Bestand").Cells(zeile, 1).Value = Sheets("Übersicht").Cells(i, 2)
Sheets("Bestand").Cells(zeile, 2).Value = Sheets("Übersicht").Cells(i, 3)
Sheets("Bestand").Cells(zeile, 3).Value = Sheets("Übersicht").Cells(i, 4)
j = j + 1
Next i
Sheets("Übersicht").Range("A5:D" & 10 + j).ClearContents
If j > 0 Then Sheets("Übersicht").OLEObjects("CB_1").Object.Caption = "Suchen"
End If
Application.ScreenUpdating = True
End Sub

Danke im Voraus.
otto
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code ändern
30.10.2006 11:38:06
Daniel
Hallo
wenn du die ganze Zeile kopieren willst, geht das am einfachsten mit:
Sheets("Übersicht").rows(j + 5).Value = Sheets("Bestand").rows(i, 1).value
damit wird die Zeile i aus "Bestand" vollständig ohne Formate nach "Übersicht" Zeile j+5 übertragen.
Zurück dann natürlich genauso.
Die Spalten müssen dann natürlich in beiden Sheets genau übereinstimmen, die Spalte mit den Zeilen-Nr (Spalte A) in "Übersicht" musst du daher löschen.
Gruß, Daniel
Anzeige
AW: Code ändern
30.10.2006 12:41:33
otto
Hi,
Danke funktioniert super.
Wie bekomme ich es nun hin, dass auch die Formatierungen der übernommenen Zeile "mitgenommen" werden ?
otto
AW: Code ändern
30.10.2006 12:48:22
Daniel
Hallo
Sheets("Bestand").rows(i, 1).copy destination:=Sheets("Übersicht").rows(j + 5)
Gruß, Daniel
AW: Code ändern
30.10.2006 14:37:47
otto
Hi,
nochmals danke.
Den Rest habe ich mir zurechtgebastelt. Habe doch wieder eine Spalte mit den Zeilennummern eingefügt, oder hast du einen Code um die Zeilen nach der Nummer in Spalte 25 zurückzuschmeißen?
otto
Anzeige
AW: Code ändern
30.10.2006 14:59:20
Daniel
Sorry, verstehe ich nicht ganz.
Gruß, Daniel
AW: Code ändern
30.10.2006 15:20:20
otto
Hi,
ich suche z.B. alle Datensätze mit dem Kürzel BF3010-1.0122. In der Übersicht stehen dann z.B. 10 Datensätze.
Nun könnte ich die Datensätze nach der einmaligen Identnummer (z.B. 406030520) in Spalte 25 wieder in den Bestand zurückkopieren. dafür bräuchte ich den Code und könnte mir somit die Spalte mit den Zeilennummern schenken.
otto
Anzeige
AW: Code ändern
30.10.2006 15:56:31
Daniel
Hallo
falls du die Daten wieder zurückkopieren willst, kannst du die Zeilen-Nr, wo sie hingehören mit
folgendem code ermitteln und zurück-kopieren

For i = 1 to 10
Zeile = worksheetfunction.match(sheets("Übersicht").cells(i,25).value, sheets("Bestand").columns(25),0)
sheets("Übersicht").rows(i).copy destination:=sheets("Bestand").rows(Zeile)
next

worksheetfunction.match hat die gleiche Arbeitsweise wie die Excel-Funktion VERGLEICH
Allerdings frage ich mich, obs nicht einfacher wäre, den Autofilter zu setzten und dann die Daten gleich direkt im Bestand zu bearbeiten als Aufwendig hin- und her zu kopieren.
Gruß, Daniel
Anzeige
;

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