[GastForen Programme Office Microsoft Office Sub Replace_From_List()

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Office - Alles fürs Büro
Themen
Beiträge
Moderatoren
Letzter Beitrag

Sub Replace_From_List()

pixel66
Beiträge gesamt: 7

20. Jan 2018, 15:09
Beitrag # 1 von 4
Bewertung:
(1666 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen

Ich habe in einem Excel unterschiedliche Inhalte aus dem Explorer (Datei) und einer Datenbank (Prod-ID_alt) zusammengestellt.
Gesamthaft sind das gegen 4800 Dateien in 5 Tabellen.
Die Dateibezeichnungen sind nicht nach Wunsch und müssen umbenannt werde.
Ich möchte das im excel erledigen; so habe ich eine bessere Übersicht.

Gibt’s dazu ein Script? Konnte im Netz noch nichts funktionelles finden.

Ablauf:
Inhalt in Spalte A z.B. «DAS_100391.eps» in der Spalte B suchen.
Entsprechender Eintrag aus Spalte B «PRO_458244_001_DAS_100391.eps» in Spalte C kopieren.

Spalte A: Datei
Spalte B: Prod-ID_alt
Spalte C: Prod-ID_neu ergibt die neue Dateibezeichnung

Vielen Dank für eure Unterstützung

Peter

Anhang:
1.Mappe1.xlsx (9.55 KB)   1.Mappe1.png (36.6 KB)
X

Sub Replace_From_List()

Klaus79
Beiträge gesamt: 306

21. Jan 2018, 16:08
Beitrag # 2 von 4
Beitrag ID: #561966
Bewertung:
(1616 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Peter,
probier mal:

Code
Sub ReplaceFromList() 
Dim i As Long
Dim lastRow As Long
Dim varSearch As Variant
Dim rng As Range
Dim rngSearch As Range
lastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
Set rngSearch = Range("B2:B" & Cells(Rows.Count, "B").End(xlUp).Row)

Application.ScreenUpdating = False

For i = 2 To lastRow
varSearch = Range("A" & i)
For Each rng In rngSearch
If InStr(rng, varSearch) > 0 Then
Range("C" & i) = rng.Value
Exit For
End If
Next rng
Next i

Set rng = Nothing
Set rngSearch = Nothing

End Sub

Klappt's?

Gruß
Klaus


als Antwort auf: [#561957]

Sub Replace_From_List()

pixel66
Beiträge gesamt: 7

21. Jan 2018, 17:07
Beitrag # 3 von 4
Beitrag ID: #561969
Bewertung:
(1609 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Klaus

Dein Script funktioniert tadellos.
Jetzt versuch ich mal den Code zu verstehen; Buch mit sieben Siegeln.

Vielleich brauche ich mal eine Anpassung.

Vielen herzlichen Dank dafür.
Einen schönen Sonntag und guten Wochenstart
Peter


als Antwort auf: [#561966]

Sub Replace_From_List()

Klaus79
Beiträge gesamt: 306

22. Jan 2018, 13:33
Beitrag # 4 von 4
Beitrag ID: #561980
Bewertung:
(1557 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Peter,

zum besseren Verständnis habe ich Dir mal den Code kommentiert.
Vielleicht bekommst Du dann eine evtl. Anpassung selber gemacht ...

Code
Sub ReplaceFromList() 

'Deklarieren der Variablen:
'Long für Zeilen
'Variant für Suchwort
'Range für Zelle und Zellbereiche

Dim i As Long
Dim lastRow As Long
Dim varSearch As Variant
Dim rng As Range
Dim rngSearch As Range

'Ermitteln der letzten Zeile von Spalte A
lastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
'Definieren des Suchbereichs in Spalte B: von Zeile 2 bis letzte Zeile Spalte B
Set rngSearch = Range("B2:B" & Cells(Rows.Count, "B").End(xlUp).Row)

'Bildschirmflackern ausschalten
Application.ScreenUpdating = False

'Die erste For-Next-Schleife durchsucht Spalte A nach dem 1. Suchwort,
'beginnend bei Zeile 2
For i = 2 To lastRow
'Das Suchwort in die Variable laden
varSearch = Range("A" & i)
'Mit der 2. For-Next-Schleife wird jede Zelle in Spalte B (rngSearch) beginnend
'von Zeile 2 bis Ende Spalte B auf das Suchwort (varSearch) untersucht
For Each rng In rngSearch
'Falls Suchwort gefunden ...
If InStr(rng, varSearch) > 0 Then
'... dann setze den Wert in Spalte C in die gleiche Zeile (i) wie das Suchwort ...
Range("C" & i) = rng.Value
'... und verlasse die innere Schleife ...
Exit For
'Ende der If-Anweisung
End If
'(Ende innere Schleife)
Next rng
' ... und erhöhe die Variable i um 1
'Dann gehe an den Anfang der ersten Schleife und lade
'das nächste Suchwort in die Variable
Next i

'Die Range-Variablen zurücksetzen
Set rng = Nothing
Set rngSearch = Nothing

End Sub

Gruß
Klaus


als Antwort auf: [#561969]
X

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
26.04.2019

Äh, der Kunde hat leider kein InDesign… Aber Office!

HUSS-MEDIEN GmbH
Freitag, 26. Apr. 2019, 17.00 - 20.00 Uhr

Vortrag

Willkommen zur ersten IDUGB im Jahr 2019. Und gemäß Heikes Ansatz, dass die IDUG „mehr als InDesign“ ist, schauen wir dieses Mal ein wenig über den Tellerrand. Okay, auch wenn wir gern über Office lächeln: Es muss jetzt mal sein Egal was man von Office hält, als InDesign-Anwender*in kommt man immer wieder in Kontakt zu Word, Excel und PowerPoint. Es fängt bei Texten und Tabellen an, die in InDesign verarbeitet werden wollen, bis hin zu PowerPoint-Vorlagen im Corporate Design, die Kunden bestellen. Teil 1: Was kann Office alles, was können wir eventuell nutzen? Keine Angst: Ihr müsste jetzt nicht zum Office-Crack werden. Dann dafür gibt es ja Leute, wie Stephan! Er wird euch helfen, zeigt euch im ersten Teil des Abends maßgeblich, was Office so alles kann, was aber auch nicht. Es geht um ganz klassische Frage von InDesigner*innen – gibt es Grundlinienraster, Schnittmasken oder Sonderfarben? Daneben gib es aber auch Grundlegendes, z.B. wie man überhaupt mit der Arbeit in Office loslegt, wo man wichtige Einstellungen findet und wie dieses Office überhaupt so tickt. Wenn Ihr also mal Dokumentenvorlagen für Kunden gestaltet, kennt ihr schon die Möglichkeiten und könntet schon während der Gestaltungsphase auf die Besonderheiten eingehen. Aber Keine Angst, es gibt immer noch genug für uns in InDesign zu tun!

Vollständige Informationen und Anmeldung via https://idug-berlin.de/idugb44/

Ja

Organisator: InDesign User Group Berlin

Kontaktinformation: InDesign User Group Berlin, E-Mailmail AT idug-berlin DOT de

https://idug-berlin.de

Veranstaltungen
06.05.2019 - 07.05.2019

Stuttgart
Montag, 06. Mai 2019, 09.30 Uhr - Dienstag, 07. Mai 2019, 17.30 Uhr

Schulung, Seminar

Unsere Schulung „Zweitägige Weiterbildung zum Cleverprinting-Reinzeichner“ bietet allen Anwendern, die in Agenturen oder freiberuflich als Reinzeichner bzw. in der Reinzeichnung arbeiten, topaktuelles Grafik- und PrePress-Fachwissen rund um das Thema „Druckdatenerstellung mit InDesign, Photoshop, Acrobat“.

Ja

Organisator: Cleverprinting.de

Zweitägige Weiterbildung zum Cleverprinting-Reinzeichner
Hier Klicken