Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
248to252
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
248to252
248to252
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Keine leeren Felder kopieren...

Keine leeren Felder kopieren...
30.04.2003 07:47:36
Harti
Mit dem folgenden Makro kopiere ich Daten von einer Datei in eine andere Datei hinein. Wie muss ich das Makro abändern, damit nur die Felder rüberkopiert werden, in denen was steht.

Leere Felder sollen auch leer bleiben. Hintergrund ist:
In der Ursprungsdatei sind am Anfang vielleicht nur die ersten 100 Felder mit Werten gefüllt. Dann werden irgendwann diese Werte gelöscht und die nächsten 100 Felder werden mit Werte gefüllt. Beim kopieren in die Datei werte.xls würde das makro jetzt die ersten 100 Felder auch löschen, da es ja die leeren Felder mitkopiert...diese Werte sollen aber stehenbleiben.

Wer kann mir helfen?
Danke
Harti


Sub CommandButton1_Click()
'kopiert 2 Bereiche in ausgewählte Tabelle
Dim strOutFile As String
Dim rngInput1 As Range 'Input-Spalte 1
Dim rngInput2 As Range 'Input-Spalte 2
Dim rngOutput1 As Range 'Output-Spalte 1
Dim rngOutput2 As Range 'Output-Spalte 2
Dim wbkOutput As Workbook 'Output-File
Dim shtOutput As Worksheet 'Output-Tabelle
Dim strSheet As String 'Tabellen-Name

strOutFile = ThisWorkbook.Path & "\werte.xls"

strSheet = InputBox("Tabellenblatt:") 'Tabellen-Namen abfrage

Set rngInput1 = [E11:E316] 'Input-Spalte 1 zuweisen
Set rngInput2 = [G11:G316] 'Input-Spalte 2 zuweisen
Set wbkOutput = Workbooks.Open(strOutFile) 'Output-File öffnen
On Error GoTo errhandler
Set shtOutput = wbkOutput.Worksheets(strSheet) 'Output-Tabelle zuweisen
On Error GoTo 0
Set rngOutput1 = shtOutput.[B11:B316] 'Output-Spalte 1 zuweisen
Set rngOutput2 = shtOutput.[D11:D316] 'Output-Spalte 2 zuweisen
rngInput1.Copy 'Spalte 1 kopieren
rngOutput1.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 'als Wert einfügen
rngOutput1.PasteSpecial Paste:=xlFormats
rngInput2.Copy 'Spalte 2 kopieren
rngOutput2.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 'als Wert einfügen
rngOutput2.PasteSpecial Paste:=xlFormats
Application.CutCopyMode = False 'Kopiermodus beenden

shtOutput.Activate
shtOutput.Range("A1").Select 'go home

errhandler:
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
doppelt o.T.
01.05.2003 15:15:28
doppelt

.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige