Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Funktion Auto-ausfüllen mit Formeln und Arbeitsmappenbezug funktioniert nicht bei Zeilen

Frage Microsoft Microsoft Office

Mitglied: Jere

Jere (Level 1) - Jetzt verbinden

09.04.2008, aktualisiert 17:45 Uhr, 7948 Aufrufe, 11 Kommentare

Excel 2003 sp3

Ich habe z.B. in dem Feld A1 die Formel =('arbeitsmappenname'!I11) stehen.
Wenn ich nun den Autoausfüller nehme und nach rechts ziehe,
erhöht sich der Buchstabe der Zeile von I auf J usw..

Ich möchte aber die Zahl erhöhen, z.Zt. kann ich das nur wenn ich nach unten Auto-ausfülle.

Die bekannten Tricks wie Strg drücken können mir keine Abhilfe schaffen,
ebenso nützt mir ein $ vor dem I nichts.

Bei ü800 Feldern wird mir das doch ein wenig viel Aufwand,
ich zähle auf eure Tipps ;)
Mitglied: bastla
09.04.2008 um 15:58 Uhr
Hallo Jere!

Vielleicht holst Du ein wenig weiter aus und beschreibst auch das Ziel der ganzen Aktion bzw die Rahmenbedingungen (wie viele Zeilen/Spalten umfassen die Ausgangsdaten, sind diese zusammenhängend, etc) ...

Grüße
bastla
Bitte warten ..
Mitglied: Jere
09.04.2008 um 16:08 Uhr
Gern, ich versuche es zumindest mal:

Ausgangsituation ist eine Excel-Datei mit mehreren Mappen.
Die erste Mappe umfasst eine Auswertung nach Stunden in dezimaler Form.

(Stell dir eine x/y Achse vor,
links steht etwas wie "Müll wegbringen" oder "einkaufen",
unten dann das Datum "01." oder "02." ...)

Die anderen Arbeitsmappen haben jeweils den Namen aus der x Achse, also "Müll" o.ä..

Ich klaue mir im Prinzip simpelst die Daten aus der Mappe "Müll" und trage von dort die enthaltenen Stunden (I11) in die Datumsübersicht.

Natürlich geht es in der Mappe nicht um meinen Haushalt, und wenn die ganze Sache nicht so umfangreich wäre, täte ich es einfach händisch manuell lösen.

Jedenfalls muss ich nun die Spalten des Datums füllen. Wie angedeutet, passiert dies über
=('Müll'!I11). Damit habe ich I11 erledigt. Jetzt allerdings möchte ich aus "müll"
die weiteren Stundenwerte für das Datum "02." usw eintragen. Normalerweise setze ich dazu
die Autofunnktion ein, sie kann mir so wunderbar einfach Zahlen erhöhen.

Wie beschrieben funktioniert das aber nur mit den Buchstaben im Verweis, nicht bei den Zahlen.

Ich hoffe, ich konnte ein wenig Licht in das verwirrende Problem bringen.
Bitte warten ..
Mitglied: bastla
09.04.2008 um 16:18 Uhr
Hallo Jere!

Hast Du schon versucht, die entsprechenden Zellen zu kopieren und dann über "Bearbeiten / Inhalte einfügen... / Transponieren" wieder einzufügen?

Grüße
bastla
Bitte warten ..
Mitglied: Jere
09.04.2008 um 16:22 Uhr
Nein, habe ich noch nicht probiert.

Ich habe es eben mal getestet,
merkwürdigerweise fehlt ihm auf einmal der Bezug zur Zeile/Spalte im eingefügten Ergebniss.

Wäre das nicht auch nur für ein Feld?
Bitte warten ..
Mitglied: bastla
09.04.2008 um 16:37 Uhr
Hallo Jere!

merkwürdigerweise fehlt ihm auf einmal der Bezug zur Zeile/Spalte im eingefügten Ergebnis.
Es werden durch diese Aktion nur die aktuellen Daten mit vertauschten Zeilen/Spalten kopiert, aber keine Formeln/Bezüge erstellt.

Wenn Du tatsächlich die entsprechenden Bezüge benötigst, würde ich diese eher über ein VBA-Script erzeugen. Dafür müsste ich wissen, welchen Bereich der Quelltabelle (etwa I11:AM26) Du ab welcher Zelle der Zieltabelle verknüpfen willst.

Grüße
bastla
Bitte warten ..
Mitglied: Jere
09.04.2008 um 17:00 Uhr
Ja, in der Tat brauche ich die bezüge.

Dein Hilfsangebot ist wirklich mehr als nett,
ich denke jedoch das ich eh schon zuviel in die Tabelle gesteckt habe,
noch eine Kraft mit in das Boot zu holen wäre einfach nicht gerecht(fertig).

Dennoch enormen Dank für den Versuch.

(Übrigens hat gestern ein Azubi versucht mich zu ärgern - werde jetzt doch noch jemanden in die Tabellte involvieren!)
Bitte warten ..
Mitglied: bastla
09.04.2008 um 17:33 Uhr
Hallo Jere!

Derartiges kann man/frau ja vielleicht öfter einmal brauchen, daher trotzdem ein Versuch:
01.
Sub ErstelleTransponierteBezuege() 
02.
 
03.
'#### ab hier anpassen #### 
04.
QuellTabelle = "Tabelle1" 
05.
QuellBereich = "I11:AM35" 
06.
 
07.
ZielTabelle = "Tabelle2" 
08.
ZielZelle = "B7" 
09.
'#### bis hier anpassen #### 
10.
 
11.
QuellSpalte = Range(Split(QuellBereich, ":")(0)).Column 
12.
QuellZeile = Range(Split(QuellBereich, ":")(0)).Row 
13.
QuellSpaltenAnzahl = Range(QuellBereich).Columns.Count 
14.
QuellZeilenAnzahl = Range(QuellBereich).Rows.Count 
15.
 
16.
ZielSpalte = Range(ZielZelle).Column 
17.
ZielZeile = Range(ZielZelle).Row 
18.
 
19.
For i = 1 To QuellSpaltenAnzahl 
20.
    For j = 1 To QuellZeilenAnzahl 
21.
        Worksheets(ZielTabelle).Cells(ZielZeile + i - 1, ZielSpalte + j - 1).Formula = _ 
22.
            "=" & QuellTabelle & "!" & _ 
23.
            Cells(QuellZeile + j - 1, QuellSpalte + i - 1).Address(False, False) 
24.
    Next 
25.
Next 
26.
End Sub
Sollte weitgehend selbsterklärend sein, daher habe ich etwas spärlich kommentiert ...

Grüße
bastla
Bitte warten ..
Mitglied: Jere
09.04.2008 um 17:39 Uhr
33 Minuten hast du gebraucht, hör mal - jetzt bin ich wirklich gefrustet!

Nicht, das ich dafür alleine 2 Tage gebraucht hab, ich werd das morgen testen und wenn es funktioniert schick ich dir 2 Packungen Gummibärchen!
Bitte warten ..
Mitglied: bastla
09.04.2008 um 17:45 Uhr
33 Minuten hast du gebraucht
Entschuldigung, musste zwischendurch kurz weg ...

Grüße
bastla

P.S.: ... um allerdings der Wahrheit die Ehre zu geben: Ich hatte schon von 17:00 angefangen (und ein wenig mit der Bildung der Adresse über ASCII-Codes herumgespielt), so kommt's dann tatsächlich einigermaßen auf die halbe Stunde hin.
Bitte warten ..
Mitglied: unwrought
21.02.2014, aktualisiert um 21:28 Uhr
Hallo,

Ich hatte diese Woche genau das selbe Problem und kann diesen Code verifizieren! Ich habe jedoch ein weiteres Problem:

Ich möchte in der gleichen Zieltabelle mehrere Spalten auf diese Weise ausfüllen.

Ich hab danach einfach den Code kopiert und die variablen anders benennt. Jedoch funktioniert dies nicht kann mir da jemand helfen mit dem Code? (siehe unten)

01.
Sub ErstelleTransponierteBezuege() 
02.
 
03.
'#### ab hier anpassen #### 
04.
QuellTabelle = "'T1" 
05.
QuellBereich = "K81:K106" 
06.
 
07.
ZielTabelle = "T2" 
08.
ZielZelle = "H22" 
09.
'#### bis hier anpassen #### 
10.
 
11.
QuellSpalte = Range(Split(QuellBereich, ":")(0)).Column 
12.
QuellZeile = Range(Split(QuellBereich, ":")(0)).Row 
13.
QuellSpaltenAnzahl = Range(QuellBereich).Columns.Count 
14.
QuellZeilenAnzahl = Range(QuellBereich).Rows.Count 
15.
 
16.
ZielSpalte = Range(ZielZelle).Column 
17.
ZielZeile = Range(ZielZelle).Row 
18.
 
19.
For i = 1 To QuellSpaltenAnzahl 
20.
    For j = 1 To QuellZeilenAnzahl 
21.
        Worksheets(ZielTabelle).Cells(ZielZeile + i - 1, ZielSpalte + j - 1).Formula = _ 
22.
            "=" & QuellTabelle & "!" & _ 
23.
            Cells(QuellZeile + j - 1, QuellSpalte + i - 1).Address(False, False) 
24.
    Next 
25.
Next 
26.
 
27.
 
28.
'#### ab hier anpassen #### 
29.
QuellTabelle2 = "'T1" 
30.
QuellBereich2 = "I81:I106" 
31.
 
32.
ZielTabelle2 = "T2" 
33.
ZielZelle2 = "H13" 
34.
'#### bis hier anpassen #### 
35.
 
36.
QuellSpalte2 = Range(Split(QuellBereich2, ":")(0)).Column 
37.
QuellZeile2 = Range(Split(QuellBereich2, ":")(0)).Row 
38.
QuellSpaltenAnzahl2 = Range(QuellBereich2).Columns.Count 
39.
QuellZeilenAnzahl2 = Range(QuellBereich2).Rows.Count 
40.
 
41.
ZielSpalte2 = Range(ZielZelle).Column 
42.
ZielZeile2 = Range(ZielZelle).Row 
43.
 
44.
For k = 1 To QuellSpaltenAnzahl2 
45.
    For b = 1 To QuellZeilenAnzahl2 
46.
        Worksheets(ZielTabelle2).Cells(ZielZeile2 + k - 1, ZielSpalte2 + b - 1).Formula = _ 
47.
            "=" & QuellTabelle2 & "!" & _ 
48.
            Cells(QuellZeile2 + b - 1, QuellSpalte2 + k - 1).Address(False, False) 
49.
    Next 
50.
Next 
51.
End Sub 
52.
 
53.
 
Des weiteren Frage ich mich ob es möglich ist im Ausfüllprozess eine "WENN" formel einzubauen?

Sprich mit den Werten aus Tabelle1 für den definierten Quellbereich soll er den Wert nehmen und dies in eine gewünschte WENN formel packen.
Bitte warten ..
Mitglied: Biber
21.02.2014, aktualisiert um 22:07 Uhr
Moin unwrought,

ich habe mal deinen Code in Code-Tags gesetzt, damit jemand die Chance zum Lesen hat.

Ich tippe auf die Zeile 04 und 29... so heisst die Quelltabelle bestimmt nicht.

Abgesehen davon wäre es mir lieber,
a) wir machen das mit einfachen Excelformeln und Auto-Ausfüllen statt mit VBA... das ist doch hier mit Melonen auf Spätzle geworfen oder wie das heisst
b) aber bitte in einem neuen Beitrag, der hier müffelt schon.

Grüße
Biber

P.S. Excelformellösung für dein erstes Beispiel:
In Tabelle T1, K$81:K$106 stehen Werte, die du transpirieren willst (oder wie das heisst)

Die sollen in Tabelle T2 Zelle H22 und danach in die Zellen rechts daneben..
Also in Zelle T2!H22 folgende Formel:
01.
=INDEX(T1!$A$1:$AZ$999;SPALTE(A$1)+80; SPALTE($K$1))
...und mit Autoausfüllen nach rechts ziehen soweit nötig.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
C und C++
gelöst IF Abfrage funktioniert nicht mehr (2)

Frage von pablovic zum Thema C und C ...

Microsoft Office
gelöst Excel: Text in Zellbereich prüfen mit Vergleichstext ggf. mit Exact-Funktion (5)

Frage von Michi1 zum Thema Microsoft Office ...

JavaScript
AngularJS Variable über Input in Funktion ausführen

Frage von badkilla zum Thema JavaScript ...

Router & Routing
Transparenter Proxy funktioniert nicht? (1)

Frage von mrserious73 zum Thema Router & Routing ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...