2016-11-18 2 views
1

Ich möchte fragen, ob jemand mit einer Möglichkeit vertraut ist, Daten aus einer Benutzerformular-Listbox in ein separates Arbeitsblatt zu exportieren.Exportieren von Daten aus einer Benutzerformularausgabe in eine Excel-Tabelle

Zum Beispiel habe ich 3 Spalten ("Name", "Firma" und "Position") zusammen mit mehreren Zeilen in einer Benutzerformular-Listbox gespeichert und angezeigt und möchte diese in ein Excel-Arbeitsblatt übertragen (mit einem Klick von eine Schaltfläche) mit den entsprechenden Spalten und Zeilen.

Vielen Dank für alle, die einen Rat geben könnten!

‚Zeigen Sie die entsprechenden Ergebnisse mit allen Parametern auf neue Zeile der Liste Ergebnisse

  Rownum = ResultsList.ListCount 
      ResultsList.AddItem 

      ResultsList.List(Rownum, 0) = Name.Value 
      ResultsList.List(Rownum, 1) = Company.Value 
      ResultsList.List(Rownum, 2) = Position.Value 


    Else 
    End If 
End Sub 

Private Sub CommandButton1_Click() 

Sheets.Add = ResultsList.Value 

End Sub 

ich im Wesentlichen versuchen das Ergebnis in‚ResultsList‘zu erhalten, die in ein neues Blatt in Excel ok funktioniert.

Entschuldigung, dass Sie nicht früher hinzugefügt haben.

+0

Können Sie mir zeigen, was Sie bisher versucht haben, vielleicht einige Beispielcode zur Verfügung stellen? –

+0

Bitte sehen Sie meine bearbeitete Version. Prost! – Vancky

+0

Ihre Frage bezieht sich auf eine Textbox, aber 'ResultsList' scheint keine Textbox zu sein (vielleicht eine Listbox?). –

Antwort

0

Die folgende scheint zu sein, was Sie zu tun versuchen:

Private Sub CommandButton1_Click() 
    Dim m As Long, n As Long 
    Dim ws As Worksheet 
    m = ResultsList.ListCount 
    n = ResultsList.ColumnCount 
    Set ws = Sheets.Add 
    ws.Range(ws.Cells(1, 1), ws.Cells(m, n)).Value = ResultsList.List 
End Sub 

Der Code geht davon aus, dass es sich um eine mehrspaltige Liste und könnte mit einer einzigen Spalte nicht (ich habe nicht mit dem getestet). Es erstellt ein neues Blatt und setzt die Werte in das neue Blatt, beginnend bei A1. Ich bin nicht überzeugt, dass dies eine gute Idee ist. Ich tendiere dazu, VBA-Code zu finden, der neue Arbeitsblätter erzeugt, die ohne Grund ziemlich nervig sind - also stellen Sie sicher, dass Sie einen guten Grund haben, ihn auf ein neues Blatt zu legen und nicht irgendwo auf einem aktuellen Blatt (vielleicht an einem vom Benutzer ausgewählten Ort).

+0

Der Code funktioniert perfekt, um ein neues Blatt zu erstellen und die Informationen aus der Liste anzuzeigen. Ich denke, Sie sind richtig für den Ansatz des neuen Blattes, da es jedes Mal ein neues Blatt hinzufügt, anstatt auf demselben zu schreiben (wenn der Knopf geklickt wird). Danke, aber dieser Code gab mir einige Ideen, mein Problem zu ändern! Es tut mir leid, dass ich Ihnen keine Antwort geben konnte, da ich noch nicht genug Reputation habe. – Vancky

+0

Ich bin froh, Ihnen helfen zu können. Du kannst die Antwort immer annehmen, wenn du willst. –

+0

Kann ich die Informationen aus der Ergebnisliste speichern und in ein Array einfügen, aus dem einfachen Grund, um weitere Informationen in das Array einzufügen, die ich nicht in der Listbox anzeigen möchte, aber in das Arbeitsblatt exportieren möchte? – Vancky

Verwandte Themen