Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Daten aus geschlossener Datei suchen und einfügen
#1
Hallo Experten!

Ich  möchte gerne Daten aus einer geschlossenen Datei auslesen und in eine andere Datei die offen ist einfügen.
Habe schon meheres im web gefunden, komme aber leider damit nicht zurecht.
1. Daten aus der geschlossenen suchen
     der Wert was gesucht werden  soll kommt aus einer TextBox (dieser beinhaltet Buchstaben und Zahlen)
     was ich gut finden würde ist die such folge wie bei excel Strg/F
2. Wenn der Wert gefunden wurde, soll der Wert aus der Zeile links ausgelesen werden.
    Dieser Wert soll dann in einen andern Ordner der geöffnet ist in der Range A10 eingetrage werden.

Die Pfad angaben für den geschlossen Ordner würden dann so aussehen:
F:\Test\Test\Test.xls      hier soll der Wert aus TextBox gesucht werden!


Die Pfad angaben für den Ordner wo der wert eingetragen werden soll, würden dann so aussehen:
C:\Test\Test1\Test1.xls      hier soll der Wert der links daneben steht in RangeA10 eingetragen werden!

Ich hoffe es kann mir einer weiter helfen oder mehere denk anstöße geben!
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top
#2
Hallo Michael,

(26.09.2016, 21:37)michel34497 schrieb: Ich  möchte gerne Daten aus einer geschlossenen Datei auslesen und in eine andere Datei die offen ist einfügen.
Habe schon meheres im web gefunden, komme aber leider damit nicht zurecht.

Leider verrätst du nicht, was du gefunden hast. Ich kenne da eine Funktion von Thomas Ramel namens GetDataClosedWB die kann das.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#3
Hallo Stefan!

Wollte grade den Code einstellen, geht leider nicht da ich ihn nicht mit habe (bin an der Arbeit).
Hab auch noch im WEB gesucht ob ich ihn auf die schnelle finde. Aber!

Stelle ihn heute Abend ein.
Sollten noch vorher fragen sein versuch ich sie gerne zu beantworten.
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top
#4
Hallo @ all und Stefan

Den Code habe ich im web bei Herbers Excel/VBA-Arich unter der suche Wert in geschlossener Datei Suchen gefunden.
Dort gab es noch einen hinweis auf einen Link http:\\www.herber.de\bbs\user\66741.zip


Code:
Option Explicit

Private Sub CommandButton1_Click()
Dim strPfad$, strTabelle$, sSuchbereich$, sAusgabe$
Dim strSuchWert$

If TextBox1 <> "" Then
   strSuchWert = TextBox1
   
   If IsNumeric(strSuchWert) Then
    strSuchWert = Replace(strSuchWert, ",", ".")
   Else
    strSuchWert = Chr(34) & strSuchWert & Chr(34)
   End If
   
   
   'Datei Pfad
   strPfad = "E:\Drucken\" 'IIf(Right$(ThisWorkbook.Path, 1) = "\", ThisWorkbook.Path, ThisWorkbook.Path & "\")
   
   'Dateipfad und Dateiname ' davor und Dateiname in [...]
   strPfad = "'" & strPfad & "[Test.xls]"
   
   'Tabellename am ende mit '!
   strTabelle = "Tabelle1" & "'!"
   
   'Ausgabebereich
   sAusgabe = Range("H1:H65536").Address(ReferenceStyle:=xlR1C1)
   
   'Suchbereich
   sSuchbereich = Range("I1:I65536").Address(ReferenceStyle:=xlR1C1)
           ' möchte gerne den such bereich ändern [I:I].Find(What:="strSuchWert")




   On Error Resume Next
   'Wert für Textbox2
   TextBox2 = ExecuteExcel4Macro( _
   "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad & strTabelle & sSuchbereich & ",0),1)" _
   )
   If Err.Number <> 0 Then TextBox2 = ""
   Err.Clear
   
   'Wert für Textbox3
   TextBox3 = ExecuteExcel4Macro( _
   "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad & strTabelle & sSuchbereich & ",0),1)" _
   )
   If Err.Number <> 0 Then TextBox3 = ""
   On Error GoTo 0
Else
   TextBox2 = "": TextBox3 = ""
End If
End Sub

Private Sub UserForm_Click()

End Sub
Der Code funktioniert fast so wie ich es will. Wo das problem jetzt liegt ist das in der TextBox1 die angabe für die suche genau sein muss.
Ich hätte es aber gerne so, das es so funktioniert wie in Excel wenn dei Tasten Strg+F gdrückt werden.
Ein Bsp.: Suchwert aus Texbox1 D35.01N4

Das funzt auch, wenn in der Spalte I D35.01N4 so steht ,mit diesen Code.
Gebe ich in der TextBox1 D35.01N4 und in der Spalte I würde dann D35.01N4   ???       findet der Code Nichts
 Was muss geändert werden?

Im anhang zwei Dateien zum testen


Angehängte Dateien
.xls   Mappe1.xls (Größe: 104,5 KB / Downloads: 5)
.xls   Test.xls (Größe: 116 KB / Downloads: 4)
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top
#5
Hallo Stefan !

Kannst du das mal von Thomas Ramel mal einstellen?
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top
#6
Hallo Michael,

hier
ist sie.
Gruß Stefan
Win 10 / Office 2016
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste