Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1148to1152
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
Inhaltsverzeichnis

Kopierbefehle mit variabler Zeilenzuweisung

Kopierbefehle mit variabler Zeilenzuweisung
Jan
Hallo zusammen,
ich habe zur Erläuterung meines Problems eine Beispieldatei erstellt:
https://www.herber.de/bbs/user/69094.xlsx
Dabei soll mit Auswahl einer Zahl in der ComboBox1 Daten aus dem Speicher (Tabelle2) in die Tabelle1 kopiert werden. Die Schwierigkeit darin liegt, dass die Daten im Speicher „Zeilen-komprimiert“ dargestellt sind und auf der Tabelle1 mit diversen Zeilenabständen zueinander in die Spalte 3 eingetragen werden sollen (gelb hinterlegte Felder). Dabei sollen die Daten z.B. Boot-Verbrauch für alle 15 Möglichkeiten auch immer an derselben Stelle auf dem Tabellenblatt 1 reinkopiert werden (ebenfalls gelb hinterlegte Felder) (vlt. lässt sich das mit einem array lösen?) Ich habe bereits versucht, den VBA Code darzustellen. Mit dem Copy-Paste Befehl kopiere ich aber die gesamte Formatierung mit. Da die Daten im Speicher auf Zahlen anderer Tabellenblätter zurückgreifen, werden auch Formeln mitkopiert. Ich benötige aber nur die Zahlenwerte ohne jegliche Formatierung!
Für Hilfestellungen bin ich Euch sehr dankbar!
Schöne Grüße,
Jan

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
mal so ins "Blaue"
15.04.2010 10:24:23
Matthias
Hallo
ohne mir das jetzt zu downloaden meine Vermutung das
DeineZelle.Copy
Zielzelle.PasteSpecial Paste:=xlValues
der richtige Weg wäre
Gruß Matthias
AW: mal so ins "Blaue"
16.04.2010 09:41:48
Jan
Danke Matthias,
gibt es denn noch eine Möglichkeit, einen einfachen Array mit aufzunehmen, so dass die Zeilenzurdnung mit einbezogen werden kann? Also kopiere immer den Wert aus (16,Spalte) vom Tabellenblatt 2 in das Feld (11,3) auf Tabelle1, den Wert (17,Spalte) von Tab.blatt 2 in Feld (12,3) usw. ?
Schöne Grüße,
Jan
Formel-Lösung oder Wertzuweisung aus Zellbereich
17.04.2010 16:33:27
fcs
Hallo Jan,
verknüpfe deine Combobox unter den Eigenschaften (LinkedCell) mit einer Zelle z.B. C3
Dann funktioniert auch eine Formellösung. Hilfreich ist dann die Verwendung von Namen für die Zellbereich.
Per Makro schaut das ganze dann wie folgt aus, wobei hier ebenfalls ein Name (Speicher.Daten =Tabelle2!$D$14:$R$26) für den Datenbereich verwendet wird. Das Makro gehört im VBA-Editor dann unter die Tabelle1.
Gruß
Franz Private Sub ComboBox1_Change() Dim Auswahl, Bereich As Range Auswahl = CLng(Me.ComboBox1.Value) Set Bereich = Application.Range("Speicher.Daten") Me.Range("C11") = Bereich(3, Auswahl) Me.Range("C12") = Bereich(5, Auswahl) Me.Range("C17") = Bereich(6, Auswahl) Me.Range("C18") = Bereich(7, Auswahl) Me.Range("C22") = Bereich(9, Auswahl) End Sub
Formel-Lösung
Tabelle1

 BC
3 2
4  
5  
6  
7  
8  
9 aktuelle Auswahl
10boot 
11km223
12verbrauch22
13  
14  
15  
16auto 
17km 23
18verbrauch5
19  
20  
21fahrrad 
22leistung1,5

Formeln der Tabelle
ZelleFormel
C11=INDEX(Speicher.boot;1;Auswahl)
C12=INDEX(Speicher.boot;2;Auswahl)
C17=INDEX(Speicher.Auto;1;Auswahl)
C18=INDEX(Speicher.Auto;2;Auswahl)
C22=INDEX(Speicher.Fahrad;1;Auswahl)
Namen in Formeln
ZelleNameBezieht sich auf
C11Auswahl=Tabelle1!$C$3
C11Speicher.boot=Tabelle2!$D$16:$R$17
C12Auswahl=Tabelle1!$C$3
C12Speicher.boot=Tabelle2!$D$16:$R$17
C17Auswahl=Tabelle1!$C$3
C17Speicher.Auto=Tabelle2!$D$19:$R$20
C18Auswahl=Tabelle1!$C$3
C18Speicher.Auto=Tabelle2!$D$19:$R$20
C22Auswahl=Tabelle1!$C$3
C22Speicher.Fahrad=Tabelle2!$D$22:$R$22


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Anzeige
AW: Formel-Lösung oder Wertzuweisung aus Zellbereich
20.04.2010 12:53:14
Jenick
Hallo Franz,
vielen lieben Dank, der Code läuft mit dem Beispiel exzellent. Ich habe versucht, diesen in bestehendess Projekt einzubauen, und bekomme jetzt immer den Fehler
"Die Methode 'Range' für das Objekt '_Application' ist fehlgeschlagen. Dabei habe ich der ComboBox unter LinkedCell eine Zelle zugewiesen und den Code wie folgt angepasst:
Dim Auswahl3, Bereich As Range
Auswahl3 = CLng(Me.ComboBox3.Value)
Set Bereich = Application.Range("Speicher.Daten")
Me.Range("E50") = Bereich(1, Auswahl3)
Me.Range("E56") = Bereich(2, Auswahl3)
Me.Range("E63") = Bereich(1, Auswahl3)
End With
Der Fehler wird jetzt bei der Zeile Set Bereich = Application... angezeigt! Muss ich vlt. noch was anpassen?
Schöne Grüße, jenick
Anzeige
AW: Formel-Lösung oder Wertzuweisung aus Zellbereich
21.04.2010 14:04:54
fcs
Hallo jenick,
hast du denn auch denn auch für den Bereich mit den Daten, die über den Wert der Combobox gesucht werden sollen, den Namen "Speicher.Daten" festgelegt?
Alternativ kannst du hier auch direkt den Bereich angeben. z.B.:
Set Bereich = Worksheets("Tabelle2").Range("$D$14:$R$26")
Gruß
Franz
AW: Formel-Lösung oder Wertzuweisung aus Zellbereich
22.04.2010 13:59:11
Jenick
Hallo Franz,
genau das ist es gewesen!
Vielen Dank Dir! :)

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige