Daten übernehmen wenn

Hallo Excelperten(innen)!

In meinem Worksheet wird ein Angebot in eine Tabelle eingegeben.
Dieser Auftrag enthält auch Zwischenüberschriften usw.

Nun möchte ich aber auf einem anderen Sheet die Daten aus dem Angebot übernehmen. Klappt auch ganz gut, nur sollen die Überschriften nicht(!) mit übernommen werde, und da stellt sich mein Problem.

Jetzt meine Überlegung:

Ist es möglich mittels VBA diese Daten zu übernehmen? (In etwa nach:
Ab zeile 16, wenn spalte a leer, dann nächste spalte, sonst übernehmen und dann nächste spalte.)

Vielen Dank für die Hilfe schonmal im Voraus

Liebe grüße

LE

Hallole,

leider ist mir zu unklar was das:

Angebot übernehmen. Klappt auch ganz gut, nur sollen die
Überschriften nicht(!) mit übernommen werde, und da stellt

mit dem da:

Ab zeile 16, wenn spalte a leer, dann nächste spalte, sonst
übernehmen und dann nächste spalte.)

zu tun hat!?
Beschreib das bitte nochmal mit anderen Worten und/oder Beispielmappe --> www.hostarea.de

Gruß
Reinhard

Hallo Reinhard.

also,

ich habe ein Sheet in dem sind daten eingetragen.

Als Beispiel:

____a____.____b____.____c____.____d____
1 4711 regal 300
2 schrank 400
überschrift
3 0815 Türe 100

So, nun möchte ich, dass nur(!) die Zeilen in das nächste Sheet übernommen werden, in denen in „a“ eine Zahlsteht.

Also die Zeile „Überschrift“ soll nicht mit übernoommen werden.

Hoffe das ist nun so verständlich erklärt.

HostArea ist von hier aus nicht möglich! :frowning:

Gruß

LE

Hi LE,

So, nun möchte ich, dass nur(!) die Zeilen in das nächste
Sheet übernommen werden, in denen in „a“ eine Zahlsteht.
Also die Zeile „Überschrift“ soll nicht mit übernoommen
werden.

Option Explicit
'
Sub tt()
Dim Zei1 As Long, Zei2 As Long
With Worksheets("Tabelle1")
 For Zei1 = 1 To .Range("A" & Rows.Count).End(xlUp).Row
 If IsNumeric(.Cells(Zei1, 1)) Then
 Zei2 = Zei2 + 1
 .Rows(Zei1).Copy Destination:=Worksheets("Tabelle2").Cells(Zei2, 1)
 End If
 Next Zei1
End With
End Sub

HostArea ist von hier aus nicht möglich! :frowning:

Gehe mal mit dem Admin ein Bierchen trinken, vielleicht kann man dann sowas besser regeln als auf dem Dienstweg :smile:

Gruß
Reinhard

Hätte nix dagegen, wo unser Admin weibl und extrem ansehnlich ist!^^

Werde den Code später testen. Aber danke Dir nochmals!

Gruß

LE

Hi LE,

So, nun möchte ich, dass nur(!) die Zeilen in das nächste
Sheet übernommen werden, in denen in „a“ eine Zahlsteht.
Also die Zeile „Überschrift“ soll nicht mit übernoommen
werden.

Hallo Reinhard,

wenn ich den Code so übernehme hab ich gleich mehrere Probleme:

  1. die Zeilen, in denen die Spalte „A“ leer ist, werden trotzdem übernommen…

  2. Das ganze Blatt wird kopiert - aber es sollen nur die Zeilen 16-91 „kopiert“ werden.

  3. und am bestesn nicht die gesamte Zeile sonder nur vier Spalten… und am Besten noch in anderer Reihenfolge…

Ich weiß, ist etwas komplizierter als gedacht, also hab ich nach einer alternativen Lösung gesucht:

In Blatt zwei soll vor dem Ausdruck die Spalte „D“ kontrolliert werden ob die leer ist, wenn ja ausblenden.

So funktioniert das ganz gut, hatte nur gehofft, die „überflüssigen“ Zeilen erst garnicht mit zu übernehmen…

Gruß

LE

Hi LE,

  1. die Zeilen, in denen die Spalte „A“ leer ist, werden
    trotzdem übernommen…
  2. Das ganze Blatt wird kopiert - aber es sollen nur die
    Zeilen 16-91 „kopiert“ werden.
  3. und am bestesn nicht die gesamte Zeile sonder nur vier
    Spalten… und am Besten noch in anderer Reihenfolge…

In welcher Reihenfolge?

In Blatt zwei soll vor dem Ausdruck die Spalte „D“
kontrolliert werden ob die leer ist, wenn ja ausblenden.

Sub tt2()
Dim Zei1 As Long, Zei2 As Long, wks2 As Worksheet
Set wks2 = Worksheets("Tabelle2")
With Worksheets("Tabelle1")
 For Zei1 = 16 To 91
 If IsNumeric(.Cells(Zei1, 1)) And .Cells(Zei1, 1) "" Then
 Zei2 = Zei2 + 1
 .Range(.Cells(Zei1, 1), .Cells(Zei1, 4)).Copy Destination:=wks2.Cells(Zei2, 1)
 If wks2.Cells(Zei2, 4) = "" Then wks2.Rows(Zei2).Hidden = True
 End If
 Next Zei1
End With
End Sub

Gruß
Reinhard

Hallo Reinhard,

Danke der Code funktioniert sehr gut.

Das mit der geänderten Reihenfolge habe ich auch umgangen, indem ich die Ursprungsliste entsprechend angepasst habe. Ist sicher die sauberere Lösung.

Danke Dir nochmals!

Gruß

LE