Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

auslesen, hyperlink, doppelte loeschen.

Forumthread: auslesen, hyperlink, doppelte loeschen.

auslesen, hyperlink, doppelte loeschen.
04.11.2003 18:25:31
th.heinrich
bestes Forum,

der betreff ist schwer zu umschreiben, aber folgendes soll ablaufen.

es werden daten in ein WORKSHEET eigelesen, dabei soll in SPALTE U ein HYPERLINK erzeugt werden.


Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rng As Range
'ActiveSheet.Unprotect "ni7888"
Application.ScreenUpdating = False
For Each rng In Range("u2").CurrentRegion.Cells
If Right(rng.Value, 4) = ".xls" Then
rng.Hyperlinks.Add rng, rng.Value
End If
Next rng
Application.ScreenUpdating = True
End Sub


klappt auch soweit. nach aufruf des HYPERLINKS wird die datei geoeffnet, damit der user sie einsehen kann. beim schliessen wird die datei erneut ausgelesen, soll heissen im AUSWERTUNGSSHEET kommt sie doppelt vor.

dies will ich wie folgt verhindern.


Private Sub Workbook_Beforeclose(Cancel As Boolean)
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
'.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
Range("A2").CurrentRegion.AdvancedFilter _
Action:=xlFilterCopy, CopyToRange:= _
Cells(1, .Columns.Count + 1), Unique:=True
'Columns.CurrentRegion.EntireColumn.Delete
.EntireColumn.Delete
End With
Application.ScreenUpdating = True
Columns.AutoFit
'ActiveSheet.Protect "ni7888"
End Sub


es werden auch DOPPELTE DATENSÄTZE gelöscht, leider mit dem nachteil, dass im AUSWERTUNGSSHEET die SPALTEN J,L,N,P,R durch H ueberschrieben werden.

siehe beispielmappe.

https://www.herber.de/bbs/user/1745.xls

sorry fuer den umfang des posting und dank an alle die bisher geholfen haben bzw. noch helfen werden (hoffnung).

gruss thomas
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
loesung
05.11.2003 15:27:11
th.heinrich
bestes Forum,

mit diesem etwas abgewandelten CODE von WernerB

Option Explicit

Sub DoppelteRaus()
Dim SuBe As Range
Dim i As Long, laR As Long
Application.ScreenUpdating = False
laR = Cells(Rows.Count, 6).End(xlUp).Row
For i = laR To 2 Step -1
laR = Cells(Rows.Count, 6).End(xlUp).Row
Set SuBe = ActiveSheet.Range(Cells(1, 6), Cells(i - 1, 6)) _
.Find(Cells(i, 6), lookat:=xlWhole)
If Not SuBe Is Nothing Then
SuBe.EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub


konnte ich das prob loesen.

gruss thomas
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige