haomm 0 Posted March 26, 2011 expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <ListViewConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 623, 444, 192, 124) $Tab1 = GUICtrlCreateTab(32, 32, 545, 337) $TabSheet1 = GUICtrlCreateTabItem("tab1") $ListView1 = GUICtrlCreateListView("ID1|NAME1|OTHER1", 40, 64, 530, 294) GUICtrlCreateListViewItem('1|a|65786315', $ListView1) GUICtrlCreateListViewItem('2|b|56454688', $ListView1) GUICtrlCreateListViewItem('3|c|86575765', $ListView1) GUICtrlCreateListViewItem('4|d|87654832', $ListView1) GUICtrlCreateListViewItem('5|e|96325478', $ListView1) GUICtrlCreateListViewItem('6|f|64651873', $ListView1) GUICtrlCreateListViewItem('7|g|96437251', $ListView1) GUICtrlCreateListViewItem('8|h|64976835', $ListView1) $TabSheet2 = GUICtrlCreateTabItem("tab2") $ListView2 = GUICtrlCreateListView("ID2|NAME2|OTHER2", 40, 64, 529, 297) GUICtrlCreateListViewItem('1|aa|6aasdx123', $ListView2) GUICtrlCreateListViewItem('2|bb|5bbsdx123', $ListView2) GUICtrlCreateListViewItem('3|cc|8ccsdx123', $ListView2) GUICtrlCreateListViewItem('4|dd|8ddsdx123', $ListView2) GUICtrlCreateListViewItem('5|ee|9eesdx123', $ListView2) GUICtrlCreateListViewItem('6|ff|6ffsdx123', $ListView2) GUICtrlCreateListViewItem('7|gg|9ggsdx123', $ListView2) GUICtrlCreateListViewItem('8|hh|6hhsdx123', $ListView2) GUICtrlCreateTabItem("") $Button1 = GUICtrlCreateButton("to Excel", 40, 384, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEndA listview of the current tab in the export data to excel how export to excel Share this post Link to post Share on other sites
AutoBert 197 Posted March 26, 2011 Hi i think the best way is to get the LV into an Array and then using _ExcelWriteArray to your Excelsheet:expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <ListViewConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Include <GuiListView.au3> #include <array.au3> #Region ### START Koda GUI section ### Form= Global $ListView[2] $Form1 = GUICreate("Form1", 623, 444, 192, 124) $Tab1 = GUICtrlCreateTab(32, 32, 545, 337) $TabSheet1 = GUICtrlCreateTabItem("tab1") $ListView[0] = GUICtrlCreateListView("ID1|NAME1|OTHER1", 40, 64, 530, 294) ConsoleWrite("0: " & $ListView[0] & @CRLF) GUICtrlCreateListViewItem('1|a|65786315', $ListView[0]) GUICtrlCreateListViewItem('2|b|56454688', $ListView[0]) GUICtrlCreateListViewItem('3|c|86575765', $ListView[0]) GUICtrlCreateListViewItem('4|d|87654832', $ListView[0]) GUICtrlCreateListViewItem('5|e|96325478', $ListView[0]) GUICtrlCreateListViewItem('6|f|64651873', $ListView[0]) GUICtrlCreateListViewItem('7|g|96437251', $ListView[0]) GUICtrlCreateListViewItem('8|h|64976835', $ListView[0]) $TabSheet2 = GUICtrlCreateTabItem("tab2") $ListView[1] = GUICtrlCreateListView("ID2|NAME2|OTHER2", 40, 64, 529, 297) ConsoleWrite("1: " & $ListView[1] & @CRLF) GUICtrlCreateListViewItem('1|aa|6aasdx123', $ListView[1]) GUICtrlCreateListViewItem('2|bb|5bbsdx123', $ListView[1]) GUICtrlCreateListViewItem('3|cc|8ccsdx123', $ListView[1]) GUICtrlCreateListViewItem('4|dd|8ddsdx123', $ListView[1]) GUICtrlCreateListViewItem('5|ee|9eesdx123', $ListView[1]) GUICtrlCreateListViewItem('6|ff|6ffsdx123', $ListView[1]) GUICtrlCreateListViewItem('7|gg|9ggsdx123', $ListView[1]) GUICtrlCreateListViewItem('8|hh|6hhsdx123', $ListView[1]) GUICtrlCreateTabItem("") $Button1 = GUICtrlCreateButton("to Excel", 40, 384, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### $iActiveTab = 0 While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Tab1 $iActiveTab =GUICtrlRead($Tab1) Case $Button1 _ToExcel($ListView[$iActiveTab]) EndSwitch WEnd Func _ToExcel($idListView) Local $hListView = GUICtrlGetHandle($idListView) Local $iItemCount = _GUICtrlListView_GetItemCount($hListView) Local $aSplit = _GUICtrlListView_GetItemTextArray($hListView) Local $iColCount = $aSplit[0] Local $aToExcel[$iItemCount][$iColCount] For $i = 0 to $iItemCount-1 $aSplit = _GUICtrlListView_GetItemTextArray($hListView,$i) for $j = 1 to $iColCount $aToExcel[$i][$j-1] = $aSplit[$j] Next Next _ArrayDisplay($aToExcel) ;and here you have to insert your execlroutine _ExcelWriteArray ;sorry I have no Excel installed EndFunc mfg autoBert Share this post Link to post Share on other sites
reb 29 Posted March 26, 2011 (edited) Here is a way to write individual items to Excel expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <ListViewConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #include <Excel.au3> #include <String.au3> #include <Array.au3> Global $ActiveTab Dim $row = 0 $oExcel = _ExcelBookNew() #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Form1", 623, 444, 192, 124) $Tab1 = GUICtrlCreateTab(32, 32, 545, 337) $TabSheet1 = GUICtrlCreateTabItem("tab1") $ListView1 = GUICtrlCreateListView("ID1|NAME1|OTHER1", 40, 64, 530, 294) GUICtrlCreateListViewItem('1|a|65786315', $ListView1) GUICtrlCreateListViewItem('2|b|56454688', $ListView1) GUICtrlCreateListViewItem('3|c|86575765', $ListView1) GUICtrlCreateListViewItem('4|d|87654832', $ListView1) GUICtrlCreateListViewItem('5|e|96325478', $ListView1) GUICtrlCreateListViewItem('6|f|64651873', $ListView1) GUICtrlCreateListViewItem('7|g|96437251', $ListView1) GUICtrlCreateListViewItem('8|h|64976835', $ListView1) $TabSheet2 = GUICtrlCreateTabItem("tab2") $ListView2 = GUICtrlCreateListView("ID2|NAME2|OTHER2", 40, 64, 529, 297) GUICtrlCreateListViewItem('1|aa|6aasdx123', $ListView2) GUICtrlCreateListViewItem('2|bb|5bbsdx123', $ListView2) GUICtrlCreateListViewItem('3|cc|8ccsdx123', $ListView2) GUICtrlCreateListViewItem('4|dd|8ddsdx123', $ListView2) GUICtrlCreateListViewItem('5|ee|9eesdx123', $ListView2) GUICtrlCreateListViewItem('6|ff|6ffsdx123', $ListView2) GUICtrlCreateListViewItem('7|gg|9ggsdx123', $ListView2) GUICtrlCreateListViewItem('8|hh|6hhsdx123', $ListView2) GUICtrlCreateTabItem("") $Button1 = GUICtrlCreateButton("to Excel", 40, 384, 75, 25) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Tab1 $ActiveTab = GUICtrlRead($Tab1) Case $Button1 WriteExcel($ActiveTab) EndSwitch WEnd Func WriteExcel($ActiveTab) $row = $row + 1 $dick = GUICtrlRead(GUICtrlRead($ListView1)) If $ActiveTab = 1 Then $dick = GUICtrlRead(GUICtrlRead($ListView2)) $array1 = _StringExplode($dick, "|", 0) For $i = 0 To 3 _ExcelWriteCell($oExcel, $array1[$i], $row, 1 + $i) Next EndFunc ;==>WriteExcel REB (Edited Code) Edited March 26, 2011 by reb MEASURE TWICE - CUT ONCE Share this post Link to post Share on other sites