VBA: Spalte A beim Export nebeneinander anzeigen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 21:23:10

Hallo zusammen,
brauche wieder Mal eure Hilfe. Und zwar habe ich eine Tabelle in Excel mit mehreren Spalten. Ich muss aber nur die Spalte A dieser Tabelle nach Notepad++ exportieren. Dazu habe ich den Code auch bereits. Wenn die SPalte A exportiert ist öffnet sich die Datei automatisch, aber nur nicht in Notepad++ sondern im normalen Notepad. Das ändert sich auch nicht, weiß da jemand näheres dazu?

Sub Export()
Dim Datei As String, i As Long, flag As Boolean
Dim zeigen
Datei = Environ("Userprofile") & "\Desktop\Test.txt"
Open Datei For Output As #1
flag = True
i = 1
'keeps going until the end of the file is reacheed
While flag
   'go to next cell
   i = i + 1
   'check if the current row is not hidden
   If Not Rows(i).Hidden Then
      'check if the current cell has data in it
      If Cells(i, 1) <> "" Then Print #1, Cells(i, 1) Else flag = False
   End If
Wend
Close #1
zeigen = Shell(Environ("windir") & "\notepad.exe " & Datei, 1)
End Sub

Mein nächstes Problem ist, die exportierten Werte in Spalte A sollten nicht untereinander, sondern nebeneinander mit einem Semikolon getrennt stehen. Dazu habe ich auch ein Code gefunden, der das aber in Excel macht und dazu noch die erste Zeile mitnimmt, die ich gar nicht brauche.
Sub ph_Transpose()
    Dim wks As Worksheet
    Dim rngA As Range, i As Long
    Set wks = Worksheets.Add
    
    With Tabelle3 'anpassen
        On Error Resume Next
        With .Range("A:A")
            For Each rngA In .ColumnDifferences(.Find("")).Areas
                With rngA.Resize(, 1)
                    i = i + 1
                    wks.Cells(i, 1).Resize(, .Columns(1).Rows.Count) = _
                    WorksheetFunction.Transpose(.Columns(1))
                    wks.Cells(i, 1) = .Cells(1)
                End With
            Next
        End With
        
    End With
End Sub
Wäre jemand so nett und könnte mir helfen, dass die ganzen Werte sich nebeneinander mit einem Semikolon getrennt in Notepad++ automatisch öffnen?
Gruß Emre

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Luschi
Geschrieben am: 05.06.2015 21:36:23
Hallo Emre,
zu Problem 1:
statt:
'zeigen = Shell(Environ("windir") & "\notepad.exe " & Datei, 1)
so:
zeigen = Shell("G:\Win_8\Tools\USB_portable\Editor\Notepad++\notepad++.exe " & Datei, 1)
Wobei Du natürlich den Pfad zur NotePad++ anpassem mußt.
Gruß von Luschi
aus klein-Oaris

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 21:45:10
Endlich, es hat geklappt.
Vielen Dank Luschi.
Jetzt noch das zweite Problem und ich es gäbe kaum jemand glücklicheren als mich :)

Bild

Betrifft: siehe meine ANtwort! o.T.
von: Sepp
Geschrieben am: 05.06.2015 21:54:52

Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Luschi
Geschrieben am: 05.06.2015 22:05:00
Hallo Emre,
das 2. Problem habe ich nicht so richtig verstanden, welcher Spaltenbereich soll so gedreht werden, daß das er dann zeilenmäß steht - wohin aber soll der Bereich gedreht werden?
fragt sich Luschi
aus klein-Paris

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 22:34:48
Hallo Luschi,
die gesamte erste Spalte (so viele Daten wie sie eben hat) soll nicht untereinander sondern nebeneinander angezeigt werden. Mit dem 2. Code von mir geht das schon, aber ich brauche diese Werte nicht in einem neuen Tabellenblatt in Excel wie bisher, sondern in der Notepad++ Datei.
Also muss es, vermute ich mal ein Mix aus beiden Codes werden, den ich selber leider nicht geschafft habe.

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 22:36:13
Hallo Emre,
was stimmt an meinem Code nicht?

Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 22:52:07
Hallo Sepp,
tut mir leid, habe deine Antwort zuerst gar nicht gesehen. Ich hab deinen Code mal laufen lassen, hier kommt ein Laufzeitfehler '53': Datei nicht gefunden. Aber wenn ich dann auf beenden klicke und die .txt Datei selber öffne sehe ich, dass es geklappt hat. Woran könnte das denn liegen?

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 22:54:58
Hallo Emre,
woran das bei dir liegt weiß ich nicht. Bei mir wird die Datei wie gewünscht erstellt und geöffnet!
Hast du den Pfad zu deiner Notepad++.exe angepasst, so wie ich es geschrieben hatte?

Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 23:00:42
Hallo Sepp,
ja das habe ich. Trotzdem erscheint der Fehler noch.
Aber trotzdem vielen Dank für deine Hilfe, der Code macht genau das, was ich brauche. Ich werde mal nach dem Fehler googeln. Vielleicht schaffe ich ihn zu beseitigen.
Gruß Emre

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 23:07:15
Hallo Emre,
bin mir sicher, dass dein pfad zu notepad++ nicht stimmt! Hast du das Leerzeichen am Ende beachtet?

Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 23:13:07
Hallo Sepp,
ja habe ich, ist genau wie bei deinem Pfad.
Aber ich glaub ich habe die Lösung gefunden. Auf jeden Fall erscheint die Fehlermeldung nicht mehr Auch dank dem Forum wieder mal.
Im unteren Link ist die Lösung für das Problem. Ich habe On Error Resume Next vor "zeigen" eingefügt und der Fehler ist nicht mehr aufgetaucht.
https://www.herber.de/forum/archiv/128to132/130096_VBA_Datei_nicht_gefunden_ueberspringen.html

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 23:15:50
Hallo Emre,
das ist aber nur Kosmetik, keine Lösung! Wird die Datei den nun geöffnet?

Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 23:17:40
Hallo,
hmmm hatte ich mir fast schon gedacht. Nein, automatisch wird die Datei nicht geöffnet muss sie manuell öffnen.

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 23:24:37
Hallo Emre,
was bringt den dieser Code? (Pfad anpassen!)

Sub test()
  MsgBox Dir("pfad zu notepad++.exe", vbNormal)
End Sub


Gruß Sepp


Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Emre
Geschrieben am: 05.06.2015 23:29:03
Hallo Sepp,
gerade gemerkt als du geschrieben hast :/ tut mir echt leid und ich denk die ganze Zeit der Pfad ist doch angepasst. Jetzt hats geklappt, öffnet sich von alleine und die Werte sind genau so wie ich es brauche.
Großes Dankeschön an dich. Hast mich gerettet :)

Bild

Betrifft: AW: VBA: Spalte A beim Export nebeneinander anzeigen
von: Sepp
Geschrieben am: 05.06.2015 21:42:36
Hallo Emre,
wenn Notepad++ geöffnet werden soll, dann wirst du wohl den Pfad zur notepad++.exe angeben müssen.

Sub Export()
  Dim Datei As String, i As Long, flag As Boolean
  Dim zeigen
  Dim strTmp As String
  
  Datei = Environ("Userprofile") & "\Desktop\Test.txt"
  
  Open Datei For Output As #1
  
  i = 1
  
  'keeps going until the end of the file is reacheed
  Do While Cells(i, 1) <> ""
    'go to next cell
    i = i + 1
    'check if the current row is not hidden
    If Not Rows(i).Hidden Then
      'check if the current cell has data in it
      If Cells(i, 1) <> "" Then strTmp = strTmp & Cells(i, 1) & ";" Else Exit Do
    End If
  Loop
  If Len(strTmp) Then
    Print #1, Left(strTmp, Len(strTmp) - 1)
  End If
  Close #1
  
  zeigen = Shell("C:\Program Files\Notepad++\notepad++.exe " & Datei, 1)
  
End Sub


Gruß Sepp


 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA: Spalte A beim Export nebeneinander anzeigen"