Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
120to124
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
120to124
120to124
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalte kopieren in vorhande Da

Spalte kopieren in vorhande Da
21.05.2002 09:07:57
Cathy
Hallo Zusammen,

ich habe folgendes Problem: Zwei Dateien Abrechnung.xls und Bericht.xls liegen vor.

Nun soll die Spalte A der Abrechnung.xls in Spalte B der Berichts.xls kopiert werden. Aber nur die Zellen, die eine Zahl (Format: #### ###### oder ####/######) enthalten und nicht leer sind. In Spalte A und B der Bericht.xls stehen jedoch schon Werte, so dass die neuen Werte oben eingefügt werden sollten. Spalte A und B müssen also nach unten rutschen.

Ausserdem soll dann in die Spalte A der Bericht.xls ein Wert über msgBox eingegeben werden, der dann in alle leeren Zellen der Spalte A eingetragen wird, wenn ein Wert in Spalte B steht.

Ich hab schon das ganze Pfingstwochenende probiert, bin aber zu keiner gescheiten Lösung gekommen. Kann mir jemand helfen??

Vielen Dank

Cathy

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Spalte kopieren in vorhande Da
21.05.2002 14:05:52
Roland Köstring
Hallo Cathy,
Das Kopierproblem kann folgender Code lösen. Das Msgbox-Problem
bleibt noch...

Sub VonA_NachB()
'---------------
Dim wbA As Workbook
Dim shA As Worksheet
Dim wbB As Workbook
Dim shB As Worksheet
Dim iZl As Long
Dim AnzZl
'
' Bericht.xls ist geöffnet, Abrechnung ist geschlossen

Set wbB = ActiveWorkbook
Set shB = ActiveSheet
'
' Abrechnung öffnen
Workbooks.Open ("Abrechnung.xls")
Set wbA = ActiveWorkbook
Set shA = ActiveSheet
' letztes belegtes Feld in Spalte A feststellen
AnzZl = Range("A65536").End(xlUp).Row
iZl = 1
' Nichtleere Felder von B nach A
Do Until iZl > AnzZl
If Cells(iZl, 1) <> "" Then
' 1.Zeile in B leer machen, andere runterschieben
shB.Range("A1:B1").Insert Shift:=xlDown
shB.Cells(1, 2) = shA.Cells(iZl, 1)
End If
iZl = iZl + 1
Loop
' Ende: Abrechnung schliessen
wbA.Close
End Sub

Gruss Roland

Anzeige
Re: Spalte kopieren in vorhande Da
21.05.2002 19:37:31
Cathy
Danke Roland, musste ich noch ein klein wenig anpassen, aber dann gings.

Gruss Cathy

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige