Transpose etwas anders....
#1
Halllochen in die Runde, ich suche eine Möglichkeit in Abhängikeit der Variable "Schreibrichtung" in Cells(Spalte, Zeile) die Schreibrichtung zu wechseln.
Bspl.:

Code:
Sub Transpose_2()
Dim wksBlatt As Worksheet
Dim Schreibrichtung
'wie kann in Abhängigkeit von "Schreibrichtung" Cells(Spalte,Zeile) getauscht werden???

Set wksBlatt = ThisWorkbook.Worksheets("Tabelle2")
        With rngBereich
            .Cells(1, 1).Value = "Mitgliederabrechnung für das Jahr: "
            .Cells(2, 7).Value = "Pacht Kto.2752"
            .Cells(2, 9).Value = "Wasser"
            .Cells(2, 14).Value = "Strom"
            .Cells(2, 19).Value = "Sonstiges"
            .Cells(3, 1).Value = "Gartennr."
            .Cells(3, 2).Value = "Name"
            .Cells(3, 3).Value = "Eintritt" & vbCrLf & "Datum"
            .Cells(3, 4).Value = "Austritt" & vbCrLf & "Datum"
            .Cells(3, 5).Value = "genutzte" & vbCrLf & "Monate"
            .Cells(3, 6).Value = "Garten" & vbCrLf & "fläche"
            .Cells(3, 7).Value = "Pacht" & vbCrLf & "Garten"
            .Cells(3, 8).Value = "Wegegeld"
            .Cells(3, 9).Value = "Wasser"
            .Cells(3, 10).Value = "Wasser"
        End With
    Set wksBlatt = Nothing
End Sub
ohne den gesamte Code händisch umzuschreiben Smile - wegen der Faulheit und Umfang

Danke für jeden Hinweis....
Top
#2
Hallo,

wieso möchtest du die Schreibrichtung ändern? Sollen da arabische Texte rein?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#3
Hallo,

z.B. so:

Code:
Sub Transpose_3()
  Dim lngDimension As Long
  Dim Schreibrichtung As String
  Dim varZ(1 To 19, 1 To 19) As Variant

  varZ(1, 1) = "Mitgliederabrechnung für das Jahr: "
  varZ(2, 7) = "Pacht Kto.2752"
  varZ(2, 9) = "Wasser"
  varZ(2, 14) = "Strom"
  varZ(2, 19) = "Sonstiges"
  varZ(3, 1) = "Gartennr."
  varZ(3, 2) = "Name"
  varZ(3, 3) = "Eintritt" & vbCrLf & "Datum"
  varZ(3, 4) = "Austritt" & vbCrLf & "Datum"
  varZ(3, 5) = "genutzte" & vbCrLf & "Monate"
  varZ(3, 6) = "Garten" & vbCrLf & "fläche"
  varZ(3, 7) = "Pacht" & vbCrLf & "Garten"
  varZ(3, 8) = "Wegegeld"
  varZ(3, 9) = "Wasser"
  varZ(3, 10) = "Wasser"
  
  lngDimension = Application.Max(UBound(varZ, 1), UBound(varZ, 2))
  With ThisWorkbook.Worksheets("Tabelle2").Cells(1, 1).Resize(lngDimension, lngDimension)
    'wie kann in Abhängigkeit von "Schreibrichtung" Cells(Spalte,Zeile) getauscht werden???
    Schreibrichtung = "v"
    If Schreibrichtung = "v" Then
      .Value = Application.Transpose(varZ)
    Else
      .Value = varZ
    End If
  End With
End Sub

Gruß Uwe
Top
#4
Danke, es geht um die Mitgliederabrechnung für eine Gartensparte. Die Gesamtabrechung für alle Mitglieder passt es auf zwei A4-Seiten Querformat.
Aber jedes Mitgied erhält noch eine Einzelrechnung überreicht. Da wäre es schön aus der Gesamtabrechnung (die in einem Array gespeichert ist) nur die entsprechenden Felder lesen und die dann senkrecht auf das A4Blatt zu schreiben. Und aus der Spaltenbeschriftung wird eine Zeilenbeschriftung.

@ Uwe - danke, schau ich mir an....

Lg
Stefan
Top
#5
Hi Stefan,

mal von Gartenkassierer zu Gartenkassierer - ich mach die Abrechnung / Rechnungslegung für die Mitglieder ohne Makros per Serienbrief Smile
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#6
Und ich würde mir einmal die "Arbeit" machen, 2 Tabellenblätter zu erstellen.
Einmal kreuz und einmal quer. Wink
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#7
Hallo,

ein Makro zum Erstellen von Spaltenüberschriften: man muss kein Hellseher sein, um zu ahnen, dass es hier wieder um eine Datei mit 200 gleichartigen Tabellenblättern geht.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste