Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

suche wert in Zwischenablage


Betrifft: suche wert in Zwischenablage von: Andreas
Geschrieben am: 19.09.2019 08:59:27

Hallo zusammen,
ich habe foglende Aufgabe zu lösen:
in workbook 1 gibt es ein Feld H1, in dem eine zu suchende Nummer steht.
in workbook 2 befindet sich diese fortlaufende Nummer an irgendeiner Stelle in Spalte A
ich muss die Zeile mit dieser Nummer nach Zeile 40 in workbook 1 kopieren. Hab schon vieles ausprobiert, z.B. die Nummer in die zwischenablage kopiert und in workbook 2 suchen lassen... funktioniert aber alles nicht. Hat jemand eine Idee - bin am verzweifeln..
Danke im Voraus !

  

Betrifft: AW: suche wert in Zwischenablage von: 1713793.html
Geschrieben am: 19.09.2019 09:12:36

Hallo Andreas,

so:

Public Sub suchen()
          Dim raFund As Range
          
          With Worksheets("Tabelle1")
              Set raFund = Worksheets("Tabelle2").Columns("A").Find(what:=.Range("H1"), _
              LookIn:=xlValues, lookat:=xlWhole)
              If Not raFund Is Nothing Then
                  Worksheets("Tabelle2").Rows(raFund.Row).Copy .Rows(40)
              Else
                  MsgBox "Suchbegriff wurde nicht gefunden."
              End If
          End With
          
          Set raFund = Nothing
          End Sub
Gruß Werner
  

Betrifft: AW: suche wert in Zwischenablage von: 1713796.html
Geschrieben am: 19.09.2019 09:27:11

ganz vielen Dank - ich probiere es gleich mal aus.

  

Betrifft: AW: suche wert in Zwischenablage von: 1713806.html
Geschrieben am: 19.09.2019 09:41:41

Hallo Werner,
er bringt mir einen Fehler in der Suchzeile - musste da eine wenig anpassen, da es zwei datein sind. Vielleicht siehst Du den Fehler gleich?

Sub Asb()
        Tastenkombination: Strg Umschalt + A
        
         Dim FirstBook As Object
         Dim SecondBook As Object
         Dim raFund As Range
         Set FirstBook = ActiveWorkbook
         Range("H9").Select
            Selection.Copy
        
         Workbooks.Open Filename:="I:\2019.xls"
         Set SecondBook = ActiveWorkbook
        
        
        
        
        With FirstBook
            Set raFund = SecondBook.Find(what:=.Range("H1"), _
            LookIn:=xlValues, lookat:=xlWhole)
            If Not raFund Is Nothing Then
                Worksheets("Tabelle2").Rows(raFund.Row).Copy .Rows(40)
            Else
                MsgBox "Suchbegriff wurde nicht gefunden."
            End If
        End With
        
        Set raFund = Nothing
         End Sub

  

Betrifft: AW: suche wert in Zwischenablage von: 1713814.html
Geschrieben am: 19.09.2019 09:57:45

Hallo Andreas,

da fehlt jeweils noch die Angabe des Tabellenblattes.
Frage: Wozu kopierst du die Zelle H9 ??

Sub Asb()
'Tastenkombination: Strg Umschalt + A
Dim FirstBook As Workbook, SecondBook As Workbook, raFund As Range

Application.ScreenUpdating = False

Set FirstBook = ThisWorkbook
Set SecondBook = Workbooks.Open(Filename:="I:\2019.xls")

'Blattname anpassen
With FirstBook.Worksheets("Tabelle1")
    'Blattname anpassen
    Set raFund = SecondBook.Worksheets("Tabelle1").Find(what:=.Range("H1"), _
    LookIn:=xlValues, lookat:=xlWhole)
    If Not raFund Is Nothing Then
        Worksheets("Tabelle2").Rows(raFund.Row).Copy .Rows(40)
    Else
        MsgBox "Suchbegriff wurde nicht gefunden."
    End If
End With

'Datei ohne Speichern schließen
SecondBook.Close False

Set FirstBook = Nothing: Set SecondBook = Nothing: Set raFund = Nothing
End Sub
Gruß Werner
  

Betrifft: AW: suche wert in Zwischenablage von: 1713818.html
Geschrieben am: 19.09.2019 10:06:48

Hallo Andreas,

Du setzt beide, "FirstBook" und "SecondBook", mit dem ActiveWorkbook. Das kann nicht funktionieren.
Und fuer was ist das hier gut?

Range("H9").Select
      Selection.Copy
      
Versuche es so, ich denke "FirstBook" ist das mit dem Code:
      Sub Asb()
      Tastenkombination: StrG Umschalt + a
      
      Dim FirstBook As Workbook
      Dim SecondBook As Workbook
      Dim raFund As Range
      Set FirstBook = ThisWorkbook
      
      Workbooks.Open Filename:="I:\2019.xls"
      Set SecondBook = ActiveWorkbook
      
      With FirstBook
          Set raFund = SecondBook.Find(what:=.Range("H1"), LookIn:=xlValues, lookat:=xlWhole)
          If Not raFund Is Nothing Then
              SecondBook.Sheets("Tabelle2").Rows(raFund.Row).Copy .Rows(40)
          Else
              MsgBox "Suchbegriff wurde nicht gefunden."
          End If
      End With
      
      Set raFund = Nothing
      
      End Sub
      
Gruss Torsten
  

Betrifft: AW: suche wert in Zwischenablage von: 1713824.html
Geschrieben am: 19.09.2019 10:26:07

Hallo Torsten,

geht schon - oder bin ich noch nicht wach??

Zum Zeitpunkt an dem mit Set FirstBook = ActiveWorkbook die Variable gesetzt wird, ist ThisWorkbook das Aktive Workbook.

Dann wird mit Workbook.Open eine Datei geöffnet, die ist jetzt ja das Aktive Workbook. Somit wird dann mit Set SecondBook = ActiveWorkbook mit der eben geöffneten Datei belegt.

Aber es fehlt jeweils die Zuweisung des entsprechenden Tabellenblattes.

Gruß Werner

  

Betrifft: AW: suche wert in Zwischenablage von: 1713825.html
Geschrieben am: 19.09.2019 10:28:23

Hallo Torsten,
danke für Deine Hilfe! Das oben war noch ein Überrest von meinem ersten Versuch - sorry.

Mit dem neuen code bekomme ich eine Fehlermeldung in dieser Zeile:
Set raFund = SecondBook.Find(what:=.Range("H1"), LookIn:=xlValues, lookat:=xlWhole)

"objekt unterstützt diese Eigenschaft oder Methode nicht"

was kann das sein? Muss ich irgendwas noch aktivieren?

Danke und Gruß!

  

Betrifft: AW: suche wert in Zwischenablage von: 1713833.html
Geschrieben am: 19.09.2019 10:57:53

Hallo,

hab ich uebersehen. Du musst auch im SecondBook noch das Tabellenblatt und Bereich angeben auf dem gesucht werden soll. z.B.:

Set raFund = SecondBook.Sheets("Tabelle2").UsedRange.Find(what:=.Range("H1"), LookIn:=xlValues, lookat:=xlWhole)

  

Betrifft: AW: suche wert in Zwischenablage von: 1713834.html
Geschrieben am: 19.09.2019 11:04:20

Perfekt - ganz lieben Dank Euch beiden !!

  

Betrifft: gerne... von: 1713836.html
Geschrieben am: 19.09.2019 11:07:08

Gruss

  

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T. von: 1713837.html
Geschrieben am: 19.09.2019 11:09:26


Beiträge aus dem Excel-Forum zum Thema "suche wert in Zwischenablage"