Thema Datum  Von Nutzer Rating
Antwort
Rot Problem beim Einfügen von mehreren Zellen nach Suchbefehl
16.04.2012 18:42:14 Marcel
*****
NotSolved
17.04.2012 16:53:05 Marcel
NotSolved

Ansicht des Beitrags:
Von:
Marcel
Datum:
16.04.2012 18:42:14
Views:
2215
Rating: Antwort:
  Ja
Thema:
Problem beim Einfügen von mehreren Zellen nach Suchbefehl

Hallo zusammen,

ich möchte ein kleines Makro erstellen, das mir den Inhalt von vorgegebenen  Zellen (Im Beispiel Variable ersetzedurch) in den Bereich schreibt, den ich zuvor anhand des Zelleninhalts %Person% suche. Mein Programm findet ihn auch und ich schaffe es entweder, eine Zeile einzufügen und das %...% stehen zu lassen oder dieses durch die erste zahl in meinem Array zu ersetzen.

Ich möchte aber, dass genau das Array mit seiner Länge zwischen die Zellen kopiert wird und nichts überschrieben wird. Die Arraylänge habe ich ja mit "angespzellen" schon ausgelesen. Wenn ich versuche, innerhalb der Schleife eine zweite Schleife zu öffnen um nacheinander Zellen einzufügen, dann fehlt ihm beim übersetzen der Anfang der ersten Schleife.

Hier mein Programmcode:

'-------------------------------------------------------------------!!!Deklarieren der Variablen!!!-------------------------------------------------------------------
Dim blatt As Worksheet
Dim gefunden As Range
Dim i As Integer

Dim finde As String
Dim ersetzedurch As Variant
Dim anzgespzellen As String

Dim quellcode As Variant
Dim Zahl As String
Dim kopiere As Byte
Dim Zeilen As String

'-------------------------------------------------------------------!!!Programm!!!-------------------------------------------------------------------
Sub FindePlatzhalterUndErsetze()
'Zuweisen nach was gesucht werden soll
finde = "%Person%"
'Zuweisen durch was der Platzhalter ersetzt werden soll
ersetzedurch = Sheets(3).Range("B2:B7")
'auslesen, wie lang das Array "ersetzedurch" ist, dies in "anzgespzellen" speichern
anzgespzellen = UBound(ersetzedurch) + 1

'Suchvorgang, suchen nach %...% in Arbeitsblatt 2
Set blatt = Worksheets(2)
    For i = 1 To 256                                                                'Schleife: suche in allen 256 Spalten
        With blatt.Columns(i)
            Set gefunden = .Find(What:=finde, LookIn:=xlValues, LookAt:=xlWhole)
            If Not gefunden Is Nothing Then gefunden.Cells.Insert Shift:=xlShiftDown
        End With
    Next i
End Sub

 

Ich würde mich echt freuen, wenn mir jemand dort einen Tipp geben könnte. Habe mir da schon lange den Kopf dran zerbrochen.

Vielen Dank schonmal

 

Marcel

 

 

 

 


Ihre Antwort
  • 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: Name: Email:



  • 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
Rot Problem beim Einfügen von mehreren Zellen nach Suchbefehl
16.04.2012 18:42:14 Marcel
*****
NotSolved
17.04.2012 16:53:05 Marcel
NotSolved