рд╕реНрд╡рдЪрд╛рд▓рди: рддреНрд╡рд░рд┐рдд рд╢реБрд░реБрдЖрдд рдпрд╛ "рдареАрдХ рд╣реИ, рдПрдХреНрд╕реЗрд▓, рдореЗрд░реЗ рд▓рд┐рдП рдЦреБрдж рд▓рд┐рдЦреЛ!"

рдПрдордПрд╕ рдХрд╛рд░реНрдпрд╛рд▓рдп рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рддреНрд╡рд░рд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдкрд╛рд▓рдирд╛ рд╡рд┐рд╖рдпред рдФрд░ рдмреНрд▓реИрдВрдХ рд╢реАрдЯ рд╕рд┐рдВрдбреНрд░реЛрдо рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреАред

рдЬреИрд╕рд╛ рдХрд┐ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╖рдп рдкрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрд╡рдпрдВ рддреЗрдЬрд╝ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рд╕реНрд╡рдпрдВ рд╣реА рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдФрд░ рд╡реЙрд▓реНрдпреВрдо рд╣рдореЗрд╢рд╛ рдмрд╣реБрдд рдмрдбрд╝реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕реНрд╡рдЪрд╛рд▓рди рдЖрдкрдХреЛ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдореИрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЖрдпрд░рдирдкрд┐рдереЙрди рдХреЗ рд▓рд┐рдП рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рджреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рдЬрдЧрд╣ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рд╡рд░рд╢реЗрд▓)ред


рдЧрд╛рдиреЗ рдХреЗ рдмреЛрд▓ рдереЛрдбрд╝реЗ рд╣реА


рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдиреНрдпреВрдирддрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВред рд▓рдХреНрд╖реНрдп рдЬрд▓реНрджреА рд╕реЗ рдЬрдЯрд┐рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ (рдкреНрд░рджрд░реНрд╢рди, рдПрдореНрдмреЗрдб рдХрд░рдирд╛, рдПрдордПрд╕ рдСрдлрд┐рд╕ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рдирд╛, рдЖрджрд┐) рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рд╣реИред

рджрд░рдЕрд╕рд▓, рдХреЛрдб


IMHO, рд╕рдмрд╕реЗ рдЙрдЪрд┐рдд рд╡рд┐рдХрд▓реНрдк JScript рдпрд╛ VBScript рд╣реИ (рдЕрдзрд┐рдХ рд╕рдЯреАрдХ, рд╡рд┐рдВрдбреЛрдЬ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрд╕реНрдЯ ), рдХреНрдпреЛрдВрдХрд┐ рджреБрднрд╛рд╖рд┐рдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ, рдФрд░ рдЖрдк рдорд┐рддреНрд░реЛрдВ / рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ - рдПрдХреНрд╕рдкреНрд▓реЙрдкрд░ рдореЗрдВ xls (x) рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЦреАрдВрдЪреЗрдВ рдФрд░ рдиреМрдХрд░реА рдЪрд▓реА рдЬрд╛рдП:
var excel = WScript.CreateObject("Excel.Application"); var fileName = WScript.Arguments.Item(0); try { main(); } catch(e) { //       delete excel; throw e; } function main() { //excel.Visible = true; //     ,  - ,     //var book = excel.Workbooks.Add(); //   () var book = excel.Workbooks.Open(fileName); //   var sheet = book.Worksheets.Item(1); // ( VBA   ) // -  for (var i = 1; i <= 10; i++) { //     sheet.Range("A" + i).Value = "hello_" + i; } //   book.Close(true); //  //book.Close(true, newFileName); //  ... WScript.Sleep(2000); //  ,   :) } 

рдореБрдЦреНрдп рджреЛрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдбрд┐рдмрдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ (рдореИрдВрдиреЗ рд▓реВрдк рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЖрдзреЗ рдШрдВрдЯреЗ рдХреА рд╣рддреНрдпрд╛ рдХреА - 0 рд╕реЗ рдирдВрдмрд░рд┐рдВрдЧ рдиреЗ рдПрдХ рдЪреВрдХ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рджреА)ред

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд▓рдХреНрд╖реНрдп рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реИ, рдФрд░ рдЬреЗрдПрд╕ / рд╡реАрдмреАрдПрд╕ рдХреЛ рдЙрдирдХреЗ рдореВрд▓ рдФрд░ рдкрд░рд┐рдЪрд┐рдд рдЕрдЬрдЧрд░ рд╕реЗ рдмрд╣реБрдд рдЦрд░рд╛рдм рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ (рдЖрдпрд░рдирдкрд┐рдереЙрди):
 # coding=utf-8 # IronPython 2.6 # hint: http://www.ironpython.info/index.php/Interacting_with_Excel import clr, os clr.AddReferenceByName('Microsoft.Office.Interop.Excel, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c') from Microsoft.Office.Interop import Excel ex = Excel.ApplicationClass() #ex.Visible = True ex.DisplayAlerts = False def main(): ws = workbook.Worksheets[1] # rowsCount = ws.UsedRange.Rows.Count #  - : for i in range(1,11): ws.Range("A{0}".format(i)).Value = 'hello_{0}'.format(i) #      workbook = ex.Workbooks.Open( os.path.realpath( 'test.xlsx' ) ) try: main() finally: workbook.Save() workbook.Close() 


рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рддрдереНрдп


рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрдХреЗрдд рдПрдХреНрд╕реЗрд▓ рдореЗрдВ рдореИрдХреНрд░реЛ рд╕рдВрдкрд╛рджрдХ рд╣реИред рд╣рдо рдЙрд╕ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ( рджреЗрдЦреЗрдВ -> рдореИрдХреНрд░реЛрдЬрд╝ -> рд░рд┐рдХреЙрд░реНрдб рдореИрдХреНрд░реЛ ... , рдирд╛рдо рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛), рдЕрдкрдирд╛ рдХреЛрдб рдЦреЛрд▓реЗрдВ ( рджреЗрдЦреЗрдВ -> рдореИрдХреНрд░реЛрдЬрд╝ -> рдореИрдХреНрд░реЛрдЬрд╝ рджреЗрдЦреЗрдВ ... ) рдФрд░ рдЗрд╕реЗ рдЫрд╡рд┐ рдФрд░ рд╕рдорд╛рдирддрд╛ рдореЗрдВ рдХрд░реЗрдВред рдореИрдХреНрд░реЛ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рд╕реНрд╡рдпрдВ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдорд╛рди рдбрд╛рд▓реЗрдВ рдпрд╛ рдмрджрд▓реЗрдВ, рд░рдВрдЧ / рдлрд╝реЙрдиреНрдЯ рдмрджрд▓реЗрдВ, рдЖрджрд┐ред рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдореИрдХреНрд░реЛ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╡рд╕реНрддреБрдУрдВ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП , рдПрдХреНрд╕реЗрд▓ рдХреА рд╡рд╕реНрддреБ рджреБрдирд┐рдпрд╛ рдПрдХ рд╡рд░реНрдЧ рдкреНрд░рдгрд╛рд▓реА рд╣реИ (рдПрдХ рд╣реА рдмрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдпрд╛рд▓рдп 2010 рдХреЗ рд▓рд┐рдП )ред

рдПрдХ рдЫреЛрдЯрд╛ рдмреЛрдирд╕: рд░рдВрдЧ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░рд╛рдВрдХ ред

PS рдХрд╣реАрдВ рдореИрдВ C ++ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдФрд░ рдХрд╣рд╛рдиреА рд╣реИ :)

Source: https://habr.com/ru/post/In139850/


All Articles