Access-o-Mania

Office-Forum (Deutsch/German) => Microsoft Excel => Thema gestartet von: silentwolf am November 20, 2014, 11:48:19

Titel: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am November 20, 2014, 11:48:19
Hi,
würde hoffen wenn mir jemand mit diesen Code weiterhelfen könnte bitte!
Möchte in Spalte A nach einen Text Suchen und diesen dann in Spalte F der selben Tabelle einfügen
da der Text sonst in keiner Spalte Text enthält sollte der nach der Copy gelöscht werden.

Also ich habe folgenden Struktur:
Rechnungs Nr: xxxx
Kunden Nr: xxx
Der Code findet mir den Text Kunden alles in Spalte A
Jetzt möchte ich das der Kunde Nr: xxx in die selbe Reihe als die Rechnungsnummer aber in Spalte F eingefügt wird.
Also nach dem Ausschneiden der Kunden Nr: soll diese Reihe gelöscht warden.


Sub FindTextAndCopy()
Dim Zeile As Long
Dim ZeileMax As Long

    With Tabelle14
    ZeileMax = .Cells(.Rows.Count, 1).End(xlUp).Row
   
        For Zeile = 2 To ZeileMax
       
        If InStr(.Cells(Zeile, 1).Value, .Range("G1").Value) > 0 Then
        .Cells(Zeile, 1).EntireRow.Copy
       
                       
        Else
       

        End If
         
        Next Zeile
   
    End With

End Sub


So weit bin ich mal mit meinen Code aber komme leider nicht weiter :( Bitte um Hilfe!


Dankeschön

Albert
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am November 20, 2014, 16:18:12
Hallo,
es tut mir leid das ich nochmal schreibe..
Bin schon ziehmlich lang auf der Suche nach diesen code aber ich finde einfach nicht heraus wie er für mich funktionieren könnte.
Weis hier wirklich keiner wie ich diesen code ändern sollte damit er funktioniert?
Leider darf man ja nicht in einem anderen forum auch fragen somit ist es etwas schwierig mit der Arbeit weiter zu kommen :(

Danke
Lg
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: MaggieMay am November 20, 2014, 16:42:46
Hallo,

ich habe ehrlich gesagt nicht verstanden, was du da vorhast, insbesondere diesen Nachsatz nicht:
Zitatda der Text sonst in keiner Spalte Text enthält sollte der nach der Copy gelöscht werden.
Vielleicht versuchst du es noch einmal besser zu erklären.

ZitatLeider darf man ja nicht in einem anderen forum auch fragen
Das einzige was du dabei riskierst ist, dass man dir einen Vorwurf daraus macht, aber was willst du sonst tun, wenn ein Forum vorübergehend "schläft". ;-)

Nachtrag:
ZitatMöchte in Spalte A nach einen Text Suchen und diesen dann in Spalte F der selben Tabelle einfügen
Dann ist der folgende Befehl wohl eher ungeeignet:.Cells(Zeile, 1).[color=red]EntireRow[/color].CopyUnd wo es "Copy" gibt, sollte auch ein "Paste"-Befehl nicht weit entfernt sein - hoffe ich mal.
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am November 20, 2014, 16:54:08
Hallo,
ma ich bin schon den ganzen Tag beim suchen und versuchen ich werd verrückt! Aber sehr schön das sich doch jemand sich meldet!  :)
Also es ist eigentlich wahrscheinlich total simple aber ich komme nicht drauf

Sub FindTextAndCopy()
Dim Zeile As Long
Dim ZeileMax As Long

    With Tabelle14
    ZeileMax = .Cells(.Rows.Count, 1).End(xlUp).Row
   
        For Zeile = 2 To ZeileMax
       
        If InStr(.Cells(Zeile, 1).Value, .Range("G1").Value) > 0 Then
        .Cells(Zeile, 1).Interior.ColorIndex = 4
                               
        Else
        .Cells(Zeile, 1).Interior.ColorIndex = xlColorIndexNone

        End If
         
        Next Zeile
   
    End With

End Sub


also dieser obige Code markiert mir alle Zellen die mit den Suchbegriff den ich in Zelle G1 eingetragen habe und alles gut :)
Nur ich möchte diese nicht markieren sondern mit cut and paste in eine andere Spalte übertragen.
Also die erste markierte Zeile ist in Zeile A135 z.B. nun möchte ich die Zelle in F134 haben also eine Zeile Rauf und 6 Spalten rüber. Und das mit allen die mein Kriterium erfüllen.
Ich hab nähmlich eine Excel Tabelle mit Rechnungen die ich in Access übergeben möchte.
Aber hier steht zum Beispiel in A1 Rechnungs Nr 1011, In A2 Kunden Nr: 101, A3 Irgendwas anderes und so weiter.
Damit ich diese Daten in Access verwenden kann brauche ich A1 Rechnungs Nr: 1011 und in F1 Kunden Nr: 101 und so weiter.
Ich hoffe das es nun etwas besser zum verstehen ist?

Lg

Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am November 20, 2014, 19:51:42
Hallo,
es tut mir leid das ich nochmals hier eine Antwort selbst schreibe!
Ich werde diesen Threas löschen und hoffe das es dann ok ist wenn ich in einen anderen Forum diese Frage stele um vielleicht auf diesen Wege eine Antwort und Hilfe zu bekommen.
Das sollte doch hoffentlich ok sein für diese und dem anderen Forum?

Vielen Dank auf alle Fälle fürs lesen :)

Lg
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: database am November 21, 2014, 18:41:11
Hallo Albert,

warum setzt du nicht die Möglichkeit ein, ein Makro in Excel aufzuzeichnen?
Starte die Makroaufzeichnung und führe genau die Schritte durch, die du danach automatisieren willst.
Nach der Aufzeichnung findest du in einem neuen Modul den hierbei verwendeten VBA-Code, den du dann nach deinen Bedürfnissen beliebig anpassen und / oder ändern kannst.
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am November 22, 2014, 09:03:44
Hallo Peter,
schön das Du Dich gemeldet hast!! Hoffe es geht Dir eh gut!!
Ja danke für den Tip hab gar nicht daran gedacht aber leider auch mit dem Makro Rekorder komme ich nicht wirklich weiter :(
Ich möchte einen Text in Spalte A suchen und in der gleichen Reihe Spalte E kopieren.
Irgendwie funktsoniert es aber nicht.
Ich werd mal weiter probieren :)

Vielen Dank auf alle Fälle und schöne Grüße!

Albert
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: database am November 22, 2014, 19:19:31
Hallo Albert,

danke es geht mir gut, ich hab' eine Antwort in deinem neuen Beitrag verfasst.

LG
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: database am November 23, 2014, 11:09:00
Hallo Albert,

noch mal zu deiner hier oben eingestellten Frage...
ZitatIch möchte einen Text in Spalte A suchen und in der gleichen Reihe Spalte E kopieren

Ich habe das in meinem Beispiel leiser nicht berücksichtigt und die Spalte 'C' als Werte-Spalte angenommen.
Um die Spalte 'E' anzusprechen musst du nur den Parameter '3' in '5' ändern

'Schleifen für die Werteübertragung
    Do While ZeileStart < LetzteZeile
   
        For i = x To y
       
            Inhalt = Tabelle1.Cells(Ergebnis.Row - Zeile, 5).Value
Titel: Re: Hilfe mit nachfolgenden Code
Beitrag von: silentwolf am Dezember 05, 2014, 02:39:11
Hallo Peter,
hab wohl vergessen in meiner Post nachzusehen! Tut mir leid!
Hab schon etwas herum probiert und auch so einiges mit Deiner Hilfe umsetzen können!
Vielen Dank!
P.S. meine DB Struktur Frage war wohl überflüssig oops...
Manchmal sieht man den Wald vor lauter Bäumen nicht tsts..

Liebe Grüße!