გადაიყვანეთ HTML Microsoft Excel ფორმატში. Excel-დან HTML-ში კონვერტაცია: სწორი, მაღალი ხარისხის, მარტივი ცხრილის გადაქცევა html კოდში

ზოგჯერ მენეჯერი მოდის და ამბობს: "მე მინდა ვნახო ეს ცხრილი საიტზე".
და ის ტოვებს.
ჩნდება ორი სტანდარტული გზა:
- ან რედაქტორის რომელიმე ადმინისტრაციული პანელის მეშვეობით, შექმენით ცხრილი და შეავსეთ იგი მნიშვნელობებით;
- ან ხელით პირდაპირ html-ში და ასევე შეავსეთ იგი მნიშვნელობებით.
და კარგია, თუ არის 3x5 უჯრედები და თუ მეტია.

რამდენიმე წლის წინ რომ შევხვდი მსგავს პრობლემას, აღმოვაჩინე მეთოდი, რომელიც ეფუძნება Windows-ის გამოყენებით Live Writer (პროგრამული უზრუნველყოფა ბლოგის ზოგიერთ პლატფორმაზე პოსტების დასაწერად და გაგზავნისთვის).

ეს მარტივია. ჩვენ ვამაგრებთ კოპირებულ ცხრილს WLW-ში სპეციალური პასტის გამოყენებით, ფორმატის შენარჩუნებით.

შემდეგ გადადით ქვედა "წყარო" ჩანართზე WLW-ში და დააკოპირეთ მთელი უზარმაზარი კოდი ველიდან

გამოდის იგივე ან თითქმის იგივე რაც ორიგინალში. ამას წამები სჭირდება, არ ჩავთვლით ერთჯერად ხარჯებს WLW-ის რომელიმე ბლოგის ანგარიშზე მიმაგრებისთვის.
მაგალითი აქ კოდეპენი

შედეგად, ჩვენ ვიღებთ ერთ გვერდს 320 სტრიქონიანი ტექსტით.

იქ თქვენ ჯერ კიდევ უნდა იპოვოთ ის, რისი გამოყენებაც გჭირდებათ...

თუ თქვენ შექმენით ლამაზი ცხრილი Excel-ში და ახლა გსურთ მისი გამოქვეყნება ვებ გვერდის სახით, მაშინ უმარტივესი გზაამის გაკეთება არის მისი ექსპორტი ძველ HTML ფაილში. ამ სტატიაში ჩვენ განვიხილავთ რამდენიმე გზას Excel-დან მონაცემების HTML-ში გადასაყვანად, განვსაზღვრავთ თითოეული მეთოდის უპირატესობებსა და უარყოფით მხარეებს და თქვენთან ერთად ვიმუშავებთ ამ კონვერტაციის ეტაპობრივად დასასრულებლად.

გადააკეთეთ Excel ცხრილები HTML-ში Save As Web Page Tool-ის გამოყენებით

დავუშვათ, რომ თქვენ შექმენით მდიდარი ანგარიში Excel-ში და ახლა გსურთ მთელი ეს ინფორმაცია, დიაგრამასთან და კრებსით ცხრილთან ერთად, თქვენი კომპანიის ვებსაიტზე გადაიტანოთ, რათა თქვენს კოლეგებს შეეძლოთ მისი ნახვა ინტერნეტ ბრაუზერების მეშვეობით Excel-ის გახსნის გარეშე.

Excel მონაცემების HTML-ში გადასაყვანად, მიჰყევით ამ ნაბიჯებს. ეს ინსტრუქციები ვრცელდება Excel 2013, 2010 და 2007 წლებში.


რჩევა:თუ თქვენ პირველად აქცევთ Excel-ის სამუშაო წიგნის HTML ფაილად კონვერტაციას, შეიძლება გონივრული იყოს, პირველ რიგში შეინახოთ ვებ გვერდი თქვენს მყარ დისკზე, რათა საჭიროების შემთხვევაში შეცვალოთ გვერდის ონლაინ ან თქვენს ლოკალურ ქსელში გამოქვეყნებამდე.

კომენტარი: Excel-ის მიერ გენერირებული HTML კოდი არც თუ ისე სუფთაა! მშვენიერი იქნება, როდესაც რთული დიზაინის მქონე დიდი ცხრილის გარდაქმნით, გახსნით მას ნებისმიერ HTML რედაქტორში და გაასუფთავებთ კოდს გამოქვეყნებამდე. შედეგად, საიტზე გვერდი შესამჩნევად სწრაფად იტვირთება.

5 რამ, რაც უნდა გვახსოვდეს Excel ფაილების HTML-ში გადაყვანისას

Save As Web Page ინსტრუმენტის გამოყენებისას მნიშვნელოვანია გვესმოდეს, თუ როგორ მუშაობს მისი ძირითადი პარამეტრები, რათა მაქსიმალურად არ გამოიყენოთ ტიპიური შეცდომებიდა თავიდან აიცილოთ ყველაზე გავრცელებული შეცდომის შეტყობინებები. ამ განყოფილებაში ნახავთ მოკლე მიმოხილვაიმ პარამეტრებს, რომლებსაც განსაკუთრებული ყურადღება უნდა მიაქციოთ Excel ფაილების HTML-ში გადაყვანისას.

1. მხარდამჭერი ფაილები და ჰიპერბმულები

მოგეხსენებათ, ვებ გვერდები ხშირად შეიცავს სურათებს და სხვა დამხმარე ფაილებს, ასევე ჰიპერბმულებს სხვა ვებსაიტებზე. Excel ფაილის ვებ გვერდზე გადაყვანით, აპლიკაცია ავტომატურად აგროვებს თქვენთვის დაკავშირებულ ფაილებს და ჰიპერბმულებს და ინახავს მათ დამხმარე საქაღალდეში.

როდესაც ინახავთ დამხმარე ფაილებს, როგორიცაა დიაგრამები და ფონის ტექსტურები, იმავე ვებ სერვერზე, Excel ქმნის ყველა ბმულს ნათესავი. შედარებითი ბმული (URL) მიუთითებს ფაილზე იმავე ვებსაიტზე; იგი მიუთითებს ფაილის სახელს ან root საქაღალდეს საიტის სრული სახელის ნაცვლად (მაგალითად, href=”/images/001.png”). როდესაც თქვენ წაშლით ნათესავ ბმულად შენახულ ნებისმიერ ელემენტს, Microsoft Excelავტომატურად წაშლის დაკავშირებული ფაილიდამხმარე საქაღალდედან.

ასე რომ, მთავარი წესი არის ყოველთვის შეინახეთ ვებ გვერდი და დამხმარე ფაილები ერთ ადგილას, წინააღმდეგ შემთხვევაში ვებ გვერდი არ გამოჩნდება სწორად. თუ გადაიტანეთ ან დააკოპირებთ თქვენს ვებ გვერდს სხვა ადგილას, დარწმუნდით, რომ დამხმარე საქაღალდე დაკოპირებულია იმავე ადგილას, წინააღმდეგ შემთხვევაში ბმულები არ იქნება სწორი. თუ თქვენ ხელახლა შეინახავთ ვებ გვერდს სხვა ადგილას, Microsoft Excel ავტომატურად დააკოპირებს დამხმარე საქაღალდეს.

თუ ინახავთ ვებ გვერდებს სხვადასხვა ადგილას ან თუ Excel ფაილი შეიცავს ჰიპერბმულებს გარე ვებსაიტებზე, მაშინ ასეთ შემთხვევებში აბსოლუტურიბმულები. აბსოლუტური ბმულები შეიცავს სრულ გზას ფაილის ან ვებ გვერდისკენ, რომელზე წვდომა შესაძლებელია ნებისმიერი ადგილიდან, მაგალითად: www.your-domain/section/page.htm.

2. ცვლილებების შეტანა და ვებ გვერდის ხელახლა შენახვა

თეორიულად, შეგიძლიათ შეინახოთ Excel-ის სამუშაო წიგნი ვებ გვერდზე, შემდეგ გახსენით მიღებული ვებ გვერდი Excel-ში, განახორციელოთ ცვლილებები და შეინახოთ ფაილი. თუმცა, ამ შემთხვევაში, Excel-ის ზოგიერთი ფუნქცია არ იქნება ხელმისაწვდომი. მაგალითად, თქვენს სამუშაო წიგნში არსებული ნებისმიერი დიაგრამა გადაიქცევა დამოუკიდებელ ნახაზებად და თქვენ ვერ შეძლებთ მათ რედაქტირებას Excel-ში, როგორც ადრე შეგეძლოთ.

ამიტომაც, საუკეთესო გზაჯერ განაახლებს Excel-ის ორიგინალურ სამუშაო წიგნს გარკვეული ცვლილებებით, შემდეგ შეინახავს მას Excel-ის სამუშაო წიგნად (.xlsx) და მხოლოდ ამის შემდეგ დააბრუნებს მას ვებ გვერდზე.

3. ვებ გვერდის ავტომატური ხელახალი გამოქვეყნება

თუ მონიშნეთ ველი ოფციის გვერდით ავტომატური გამოქვეყნება(ავტომატური ხელახალი გამოქვეყნება) დიალოგურ ფანჯარაში გამოქვეყნება როგორც ვებ გვერდი(გამოაქვეყნეთ ვებ გვერდი), რომელიც ზემოთ აღვნიშნეთ ამ სტატიაში, მაშინ თქვენი ვებ გვერდი ავტომატურად განახლდება ყოველ ჯერზე, როდესაც შეინახავთ სამუშაო წიგნს. ეს ფუნქცია ძალიან სასარგებლოა და გაძლევთ საშუალებას ყოველთვის განახლდეს თქვენი Excel ცხრილის ონლაინ ასლი.

თუ ჩართავთ პარამეტრს ავტომატური გამოქვეყნება(ავტომატური ხელახლა გამოქვეყნება), ყოველ ჯერზე, როდესაც შეინახავთ სამუშაო წიგნს, გამოჩნდება შეტყობინება, რომელიც მოგთხოვთ დაადასტუროთ, გსურთ თუ არა ჩართოთ ან გამორთოთ ავტომატური ხელახალი გამოქვეყნება. თუ გსურთ Excel ფურცელი ავტომატურად გამოქვეყნდეს, აირჩიეთ ჩართვა…(ჩართეთ...) და დააწკაპუნეთ OK.

თუმცა, შეიძლება არსებობდეს გარემოებები, როდესაც არ გსურთ Excel-ის სამუშაო ფურცლის ან მისი ელემენტების ავტომატურად გამოქვეყნება, მაგალითად, თუ ფაილი შეიცავს კონფიდენციალური ინფორმაციაან შეცვლილია სხვა ვინმეს მიერ მეურვის გარდა. ამ შემთხვევაში, შეგიძლიათ დროებით ან სამუდამოდ გამორთოთ ავტომატური ხელახალი გამოქვეყნება.

ავტომატური ხელახალი გამოქვეყნების დროებით გამოსართავად აირჩიეთ ზემოთ მოცემულ პოსტში მოცემული პირველი ვარიანტი – გამორთეთ AutoRepublish ფუნქცია, სანამ ეს სამუშაო წიგნი ღიაა(გამორთეთ ავტომატური ხელახლა გამოქვეყნების ფუნქცია, როდესაც ეს წიგნი ღიაა.) ეს გააუქმებს Excel-ის მიმდინარე სესიის ავტომატურ გამოქვეყნებას, მაგრამ ჩართავს მას შემდეგ ჯერზე, როდესაც გახსნით სამუშაო წიგნს.

ავტომატური ხელახალი გამოქვეყნების სამუდამოდ გამოსართავად ყველა არჩეული ელემენტისთვის, გახსენით თქვენი Excel სამუშაო წიგნი და გადადით დიალოგურ ფანჯარაში გამოქვეყნება როგორც ვებ გვერდი(გამოაქვეყნეთ ვებ გვერდი) და დააჭირეთ ღილაკს გამოაქვეყნეთ(გამოქვეყნება). განყოფილებაში ნივთები გამოსაქვეყნებლად(გამოქვეყნებული ნივთები) სიაში აირჩიეთ(აირჩიეთ) აირჩიეთ ელემენტი, რომლის გამოქვეყნებაც არ გსურთ და დააჭირეთ ღილაკს ამოღება(წაშლა).

4. Excel ფუნქციები, რომლებიც არ არის მხარდაჭერილი ვებ გვერდებზე

სამწუხაროდ, Excel-ის ზოგიერთი ძალიან სასარგებლო და პოპულარული ფუნქცია მიუწვდომელია, როდესაც თქვენს Excel ფურცლებს HTML-ში გადაიყვანთ:

  • სიტყვების ფორმატირებაარ არის მხარდაჭერილი Excel ფურცლის როგორც შენახვისას ერთი ფაილის ვებ გვერდი(ამ ფაილში ვებგვერდი) ასე რომ, დარწმუნდით, რომ შეინახეთ როგორც ვებ გვერდი(ვებ გვერდი). ჰისტოგრამები, ფერის მასშტაბები და ხატულების ნაკრები არ არის მხარდაჭერილი ორივე ვებ გვერდის ფორმატით.
  • მოტრიალებული ან ვევერტიკალური ტექსტიარ არის მხარდაჭერილი Excel-დან მონაცემების ვებ გვერდის ფორმატში ექსპორტისას. ნებისმიერი შემობრუნებული ან ვერტიკალური ტექსტი თქვენს სამუშაო წიგნში გარდაიქმნება ჰორიზონტალურ ტექსტად.

5. ყველაზე გავრცელებული სირთულეები, რომლებიც წარმოიქმნება Excel ფაილების HTML-ში გადაყვანისას

Excel-ის სამუშაო წიგნის ვებ გვერდზე გადაყვანისას შეიძლება შეგხვდეთ შემდეგი ცნობილი სირთულეები.

კლასელები

ალექსეი მიჩურინი

Excel-დან HTML-ში გადაყვანა:

სწორი, მაღალი ხარისხის, მარტივი

ასე რომ, ჩვენი ამოცანაა დოკუმენტის სწორად გადაქცევა xls ფორმატიდან HTML ფორმატში, საწყისი დოკუმენტის ფორმატირების გათვალისწინებით და ამავე დროს "ცოტა სისხლით" გავლა.

პრობლემის განცხადება. ან რა პრობლემაა?

ბევრი ვებმასტერი ხშირად აწყდება კონვერტაციის გამოწვევას Microsoft ფაილები Excel სხვა ფორმატებში. ეს ხშირად სავსეა სირთულეებით, რადგან xls ფორმატი, როგორც ყველამ იცის, არ არის დოკუმენტირებული.

ზოგიერთ შემთხვევაში შესაძლებელია დაზოგვა Excel მონაცემებიდოკუმენტურ ფორმატებში და მათი შემდგომი დამუშავება. მაგრამ ხშირად ეს მეთოდი არ მუშაობს დამაკმაყოფილებლად. მარტივი ფორმატები, მოსახერხებელი დამუშავებისთვის, არ შეუძლიათ შეინარჩუნონ ყველა ინფორმაცია დოკუმენტის ფორმატირების შესახებ, ხოლო რთული ფორმატების დამმუშავებლის დანერგვა არაგონივრულად შრომატევადია.

თქვენ არ გჭირდებათ შორს ეძებოთ მაგალითი. ბევრი კომპანია, რომლებსაც აქვთ საკუთარი ვებ გვერდები და პერიოდულად განაახლებს მათ, აწარმოებენ თავიანთ ბიზნესს Excel-ის გამოყენებით. ყოველ ჯერზე, როდესაც ინფორმაცია განახლდება სერვერზე, ვებმასტერს აწყდება კონვერტაციის ამოცანა. უფრო მეტიც, ამოცანა შეიძლება გართულდეს შემდეგი ასპექტებით:

პირველ რიგში, ეს არის დიზაინის ცვლილება. Excel-ში მომზადებული ფასების სია, როგორც წესი, შექმნილია შავ-თეთრ პრინტერზე დასაბეჭდად. ფასების სია საიტზე - არა. ყოველ შემთხვევაში, ამ მიზეზით, მარტივი „შენახვა როგორც ვებ გვერდი“ არ არის შესაფერისი (ამ გზით შენახვისას მიღებულ HTML კოდის ხარისხზე არ ვსაუბრობ).

მეორეც, კონვერტაციისას აუცილებელია გავითვალისწინოთ Excel-ის სპეციფიკა. მაგალითად, ბევრი ადამიანი, ვინც არედაქტირებს ფასების სიას, ფართოდ იყენებს Format/Row/Hide ბრძანებას. ამ შემთხვევაში, ხაზის სიმაღლე ხდება ნულოვანი და ხაზი, როგორც ჩანს, ქრება ეკრანიდან და ბეჭდვისას. ნათელია, რომ ასეთი სტრიქონები არ უნდა დასრულდეს ვებგვერდზე. თუმცა, ისინი შესანიშნავად არის შენახული სხვა ფორმატებში და არაფრით განსხვავდებიან ჩვეულებრივი, არაფარული სტრიქონებისგან. ეს იწვევს დოქტრინას „შენახვა როგორც დელიმიტირებული ტექსტი და პროცესი“ არ იძლევა დამაკმაყოფილებელ შედეგებს.

მესამე, ფასების სია ხშირად იყენებს ფორმატირებას, რომლის შენარჩუნებაც კრიტიკულია. მაგალითად, ზოგიერთი პროდუქტის სახელები შეიძლება იყოს გადახაზული ან ფერებში ხაზგასმული, იმის ნიშნად, რომ ეს პროდუქტები იყო და აუცილებლად იქნება, მაგრამ ახლა ასე არ არის. ზოგიერთი ელემენტი შეიძლება იყოს დახრილი და ასე შემდეგ. მთელი ეს ინფორმაცია უკვალოდ ქრება, თუ თქვენ შეინახავთ ფასების სიას მარტივ ფორმატში, ვთქვათ, ჩანართებით გამოყოფილი ტექსტის სახით.

ასე რომ, ჩვენი ამოცანაა დოკუმენტის სწორად გადაქცევა xls ფორმატიდან HTML ფორმატში, წყაროს დოკუმენტის ფორმატირების გათვალისწინებით და ამავე დროს "ცოტა სისხლით" გავლა.

მე გთავაზობთ ამ ამოცანის ორად დაყოფას. პირველი არის მონაცემთა შენახვა მარტივი ფორმატით, რომელიც მაინც შეიცავს ყველა საჭირო ინფორმაციას დოკუმენტის განლაგების შესახებ. მეორე არის ამ ფორმატის დამუშავება და HTML გვერდის შექმნა.

მე ვთავაზობ პირველი ამოცანის გადაჭრას (ექსპორტი) Excel-ის გამოყენებით. აქ ჩვენ რეალურად არ გვაქვს არჩევანი xls ფორმატის დამუშავება მხოლოდ მსოფლიოში ერთადერთი პროგრამის მიერ, რომელსაც ესმის. ეს არის დიალექტიკა.

მე ვთავაზობ მეორე პრობლემის გადაჭრას Perl ენის გამოყენებით. რატომ? იმიტომ, რომ ეს ენა ორიენტირებულია სტრინგებთან მუშაობაზე და ჩვენი მსგავსი პრობლემების გადაჭრაზე (Perl - Practical Extraction and Report Language - ეს არის ის, რაც ჩვენ გვჭირდება). რადგან ვებ დეველოპერში ჩართულმა საკმაოდ ბევრმა პროგრამისტმა იცის ეს ენა (თუ თქვენ არ ხართ ერთ-ერთი მათგანი და გეგმავთ ინტერნეტში მუშაობას, მაშინ გულწრფელად გირჩევთ, ყურადღება მიაქციოთ Perl-ს). რადგან ეს ენა უფასოა და ხელმისაწვდომია ნებისმიერი მომხმარებლისთვის ნებისმიერ პლატფორმაზე. და რადგან ჩემი Perl კოდი შეიძლება ადვილად შეიცვალოს, აიძულებს მას, მაგალითად, განათავსოს ფასების სიის თითოეული სექცია ცალკე ფაილში, დაალაგოს ფასების სიის ელემენტები სხვადასხვა გზით, თვალყური ადევნოს განახლებებს და ფასების დინამიკას, მიაწოდოს თითოეულ ელემენტს HTML ფორმის ველები. ვებ-მაღაზიაში ონლაინ შეკვეთისთვის... საბოლოო ჯამში, ჩემი სკრიპტი ადვილად გადაიქცევა CGI აპლიკაციად ვებ სერვერის ადმინისტრირებისთვის.

ეს გამოსავალი მეჩვენება, რომ ყველაზე მოქნილი, ფუნქციონალური და კომპაქტურია, რადგან პრობლემის თითოეული ნაწილი წყვეტს ხელსაწყოს, რომელიც ყველაზე შესაფერისია მის გადასაჭრელად.

დავიწყოთ კონკრეტული მაგალითით. როგორც "გვინეა გოჭი" მე გთავაზობთ შემდეგ ფასთა სიას (იხ. სურ. 1).

როგორც ხედავთ, ის აერთიანებს ყველა ზემოთ ნახსენებ უსიამოვნო ელემენტს: და ფორმატირებას (ფონი, გადახაზვები, თამამი ტიპი), და ფარული ხაზები (თუ კარგად დააკვირდებით, შეამჩნევთ, რომ მეცხრე სტრიქონის შემდეგ არის მეთორმეტე ხაზი). მოდით მივიღოთ.

მონაცემთა ექსპორტი Excel-დან

დავიწყოთ პირველი პრობლემის გადაჭრა. Excel-დან მონაცემების ექსპორტისთვის მე გთავაზობთ მარტივ მაკრო Visual Basic-ში (ხაზის ნომრები მოცემულია მხოლოდ კომენტარის გამარტივებისთვის):

1: ქვე-table2table()

2: "

3: "მაკრო, რომელიც ინახავს ცხრილის არჩეულ ფრაგმენტს

4: "ტექსტის ფორმატში ფორმატირების შენიშვნებით

5: "

6: ActiveWindow.RangeSelection-ით

7: c1 = .სვეტები.სვეტი

8: c2 = .Columns.Count - 1 + c1

9: r1 = .რიგები.მწკრივი

10: r2 = .rows.Count - 1 + r1

11: დასრულება

12: თუ (r1 - r2 = 0 და c1 - c2 = 0) მაშინ

13: MsgBox_

14: "რაღაც არ არის გამოყოფილი საკმარისად (დაზოგვისთვის) ,-)", _

15: vbCritical, "მაკრო შეტყობინება"

16: დასასრული თუ

17: fileSaveName = Application.GetSaveAsFilename(_

18: InitialFileName:="ფაილი", _

19: fileFilter:="ტექსტური ფაილები (*.txt), *.txt", _

20: სათაური: "გვერდის შენახვა ჩვენს ფორმატში")

21: თუ fileSaveName = False მაშინ

22: MsgBox_

23: "ფაილი არ იყო შერჩეული. არანაირი ქმედება არ განხორციელებულა.", _

24: vbCritical, "მაკრო შეტყობინება"

25: სხვა

28: გახსენით fileSaveName გამომავალი როგორც #1

29: r = r1-სთვის r2-მდე

30: l = CStr(სტრიქონები(r). მწკრივის სიმაღლე)

31: c = c1-სთვის c2-მდე

32: უჯრედებით (r, c)

33: l = l + sep + CStr(.ტექსტი) + _

37: დასასრული

38: შემდეგი

39: ბეჭდვა #1, ლ

40: შემდეგი

41: დახურეთ #1

42: დასასრული თუ

43: ბოლო ქვე

ეს მაკრო ინახავს ფასების სიის არჩეულ ნაწილს მითითებულ ფაილში. მაკრო შეიძლება დაემატოს ფასების სიის სამუშაო ვერსიას და დააყენოს ღილაკი მის გამოსაძახებლად (ბეჭდვის ზონის გარეთ), ან შეიძლება შეინახოს ცალკე ფაილი. დოკუმენტში მისი განთავსება ძალიან მარტივია: დარეკეთ Visual Basic Editor (მენიუ: „Tools –> Macro –> Visual Basic Editor“; ან ), შექმნა ახალი მოდული(მენიუ: „Insert -> Module“) და შეიყვანეთ აქ მოცემული ტექსტი (ხაზების ნომრების გარეშე). ახლა თქვენ შეგიძლიათ დახატოთ ღილაკი (ინსტრუმენტი Forms პანელში) და მივანიჭოთ მას მაკრო.

მოდით შევხედოთ როგორ მუშაობს ეს კოდი.

პირველი ხაზი არის მაკრო დეკლარაცია. როგორც ხედავთ, მე მას უბრალოდ table2table დავარქვი, შეგიძლიათ უფრო ხმამაღლა დავარქვათ.

6-დან 11-მდე სტრიქონებში ჩვენ განვსაზღვრავთ დოკუმენტის არჩეული ნაწილის საზღვრებს (ბოლოს და ბოლოს, ჩვენ შევინახავთ მხოლოდ შერჩეულ ნაწილს). ახლა c1 და c2 არის პირველი და ბოლო სვეტის რიცხვები, ხოლო r1 და r2 არის არჩეული არეალის პირველი და ბოლო რიგები.

შემდეგ, 12-დან 16-მდე სტრიქონებში, ჩვენ ვამოწმებთ, არჩეულია თუ არა არე, თუ ჩვენს მაკროს მოუწევს მხოლოდ ერთ უჯრედთან მუშაობა. ეს, რა თქმა უნდა, არ უნდა გააკეთოთ, მაგრამ, დიდი ალბათობით, თქვენ კი არ მართავთ ამ მაკროს, არამედ მენეჯერები, რომლებიც არედაქტირებენ ფასების სიას, თქვენ ყოველთვის არ შეგიძლიათ მათი სიზუსტის იმედი. ასე რომ, თუ არაფერი არ არის შერჩეული, ჩვენი მაკრო გამოსცემს გაფრთხილებას (იხ. სურ. 2).

17-დან 20-მდე სტრიქონებში ჩვენ მოვუწოდებთ Application.GetSaveAsFilename დიალოგს, რათა მომხმარებელმა შეარჩიოს ფაილის სახელი (იხ. სურათი 3).

კიდევ ერთხელ, შეგიძლიათ უბრალოდ მიუთითოთ ფიქსირებული სახელი, მაგრამ მე მიმაჩნია, რომ ეს მოუხერხებელია მაშინაც კი, თუ თქვენ თავად მართავთ მაკროს.

21-დან 42-მდე სტრიქონები შეიცავს if-then-else კონსტრუქციას, რომელიც ამოწმებს, მითითებული იყო თუ არა ფაილის სახელი შესანახად, თუ მომხმარებელმა დააწკაპუნა "გაუქმება" ღილაკზე "შენახვა როგორც..." დიალოგში.

თუ მომხმარებელი უარს ამბობს შენახვაზე, მაშინ გამოჩნდება შესაბამისი შეტყობინება (ხაზები 22-დან 24-მდე, თუ მითითებულია ფაილის სახელი, მაშინ იწყება ყველაზე საინტერესო ნაწილი - მონაცემების შენახვა);

მაგრამ სანამ განვიხილავთ შენახვის პროცედურას (სტრიქონები 26-დან 41-მდე), მოდით ვთქვათ რამდენიმე სიტყვა იმის შესახებ, თუ რა ფორმატში ვაპირებთ მონაცემთა შენახვას. მე გთავაზობთ დამუშავების უმარტივეს ფორმატს: ASCII ტექსტს. თითოეული მწკრივი შეესაბამება ცხრილის შესანახ რიგს. ველები გამოყოფილია ერთი სიმბოლოს დელიმიტერებით. პირველი ველი არის მწკრივის სიმაღლე (ეს ინფორმაცია საჭიროა "ფარული" რიგების გასაფილტრად). ყველა მომდევნო ველი არის უჯრედების შიგთავსი, მაგრამ თითოეული ეს ველი შეიცავს რამდენიმე ქვეველს, რომლებიც გამოყოფილია საკუთარი დელიმიტერებით. ქვეველები შეიცავს სხვადასხვა ინფორმაციას უჯრედის შესახებ: შინაარსი, ფორმატირების ვარიანტები.

ჩვენი ველის და ქვეველის გამყოფები მითითებულია ASCII კოდებით 26 და 27 სტრიქონებში, შესაბამისად. თქვენ შეგიძლიათ აირჩიოთ უფრო მოსახერხებელი გამყოფები. მაგალითად, თუ დარწმუნებული ხართ, რომ სიმბოლო „:“ არასოდეს გამოჩნდება თქვენს მონაცემებში, მაშინ შეგიძლიათ გამოიყენოთ იგი როგორც გამყოფი ან ქვეგამყოფი.

ჩვენ ვაწყობთ მარყუჟს ხაზს ხაზს (სტრიქონი 29).

თითოეული ხაზისთვის ჩვენ ვიანგარიშებთ სიმაღლეს. ამავდროულად, ჩვენ ვიწყებთ სტრიქონის მომზადებას l ცვლადის ფაილში შესანახად (ჩამონათვლის 30-ე სტრიქონი).

მარყუჟში (Listing line 31) ცხრილის მწკრივის უჯრედების გავლით, ჩვენ ვამატებთ l ხაზს ყველა ინფორმაციას, რომელიც გვაინტერესებს უჯრედების შესახებ, ვაძლევთ მას გამყოფებს.

რა უჯრედის თვისებებს შევინარჩუნებთ?

პირველ რიგში, უჯრედის ტექსტი. გთხოვთ, გაითვალისწინოთ, რომ ჩვენ ვიყენებთ თვისებას.Text და არა თვისებას.Value. ეს შემთხვევითი არ არის. თვისება. ეს ორი მნიშვნელობა შეიძლება არ ემთხვეოდეს (და ჩვეულებრივ არ ემთხვეოდეს), რადგან მნიშვნელობები ნაჩვენებია მითითებული უჯრედის ფორმატის მიხედვით (მაგალითად, რიცხვები ნაჩვენებია ათობითი ადგილების განსაზღვრული რაოდენობით).

MergeCells თვისება მიუთითებს, არის თუ არა უჯრედი გაერთიანებული უჯრედების ჯგუფის ნაწილი.

თვისება.Font.Bold ასახავს უჯრედში არსებული ტექსტის გამბედაობას.

თვისება.Font.Strikethrough მიუთითებს, იყო თუ არა ტექსტი შემუშავებული, როგორც გადახაზული.

ჩვენი მაგალითისთვის, ჩვენ ალბათ სხვა არაფერი გვჭირდება. თუმცა, არ შემიძლია არ აღვნიშნო მრავალი სასარგებლო თვისება, რომელიც შეიძლება თქვენთვის სასარგებლო იყოს. ამ თვისებების სახელები საკმაოდ მჭევრმეტყველია და მათზე კომენტარს არ გავაკეთებ, შემოვიფარგლები ჩამოთვლებით:

  • .შრიფტი.სახელი
  • .Font.FontStyle
  • .შრიფტი.ზომა
  • .შრიფტი.ხაზგასმით
  • .შრიფტი.ColorIndex
  • .შრიფტი.იტალიკი
  • .ჰორიზონტალური განლაგება
  • .ვერტიკალური გასწორება
  • .ფერების ინდექსი
  • .ნიმუში

გაითვალისწინეთ, რომ ყველა თვისება ცალსახად არის გადაცემული სტრიქონის ტიპზე CStr ფუნქციით (ხაზები 33-დან 36-მდე). ეს არის ძალიან სასარგებლო პროცედურა, რომელიც სამუდამოდ გიხსნით ტიპების გარდაქმნის თავის ტკივილისგან.

აქ მნიშვნელოვანი გაფრთხილება უნდა გაკეთდეს. საქმე იმაშია, რომ CStr ფუნქციას არ შეუძლია გაუმკლავდეს განუსაზღვრელ მნიშვნელობებს. თუ ეს გამოჩნდება თქვენს დოკუმენტებში, მაშინ CStr-ის ნაცვლად შეგიძლიათ გამოიყენოთ თქვენი საკუთარი ფუნქცია მნიშვნელობების ტექსტურ ფორმატში გადასაყვანად. მაგალითად, safeCStr:

1: ფუნქცია safeCStr(p როგორც ვარიანტი) როგორც სტრიქონი
2: თუ IsNull(p) მაშინ safeCStr = "" სხვა შემთხვევაში safeCStr = CStr(p)
3: დასრულების ფუნქცია

უნდა აღვნიშნო, რომ მე თვითონ არასოდეს შემხვედრია მსგავსი სიტუაციები, მაგრამ ჟურნალის სამეცნიერო-ტექნიკურმა კონსულტანტმა ინტერნეტში ადვილად იპოვა ფასთა სია, რომელშიც ზოგიერთ უჯრედში არ იყო განსაზღვრული .Font.Bold თვისება. მე მჯერა, რომ ასეთი დოკუმენტები შეიძლება წარმოიშვას სხვა აპლიკაციებიდან მონაცემების ექსპორტიდან. მაგალითად, 1C პროდუქტები იძლევა მონაცემთა ექსპორტს Excel-ში. ერთი სიტყვით, ასეთი სიტუაცია შესაძლებელია. - ავტორის შენიშვნა.

ასე რომ, ირჩევთ შესანახ ადგილს (ჩვენს მაგალითში ეს არის ცხრილის პირველი სამი სვეტი, სტრიქონები 4-დან 21-მდე), დააწკაპუნეთ თქვენს მიერ შექმნილ ღილაკს, აირჩიეთ ფაილის სახელი და ფაილი შეინახება. რა ვუყოთ მას შემდეგ?

ექსპორტირებული მონაცემებიდან HTML გვერდის შექმნა

თქვენ შეგიძლიათ გააკეთოთ ის, რაც გსურთ ამ ფაილით, რადგან მისი ფორმატი ჩვენთვის სრულიად ცნობილია (სასიამოვნოა ამის ცოდნა). მე მოვიყვან HTML გვერდის გენერირების მაგალითს.

როგორც ვთქვი, მე გთავაზობთ პერლის სკრიპტს:

1: #!/usr/bin/perl -w

3: #გამოიყენე მკაცრი;

5: # my ($TRUE, $FALSE)=("True", "False");

6: my ($TRUE, $FALSE)=("True", "False");

8: ქვერაოდენობა (

9: ჩემი $t=shift;

10: $t=~s|,(\d+)|, $1|;

11: დაბრუნება $t;

12: }

14: ქვე qtstring (

15: ჩემი $t=shift;

16: $t=~s/\&/\&/g;

17: $t=~s/\"/\"/g;

18: $t=~s/\>/\>/g;

19: $t=~s/\

20: დაბრუნება $t;

21: }

23: ბეჭდვა<<"TEXT";

24:

25:

26: გარკვეული კომპანიის ფასების სია

27:

32:

33:

34:

35:

36:

37:

38:

39:

40:

41:

42:

43:

44:

45:

46:

47:

48:

49:

50: ტექსტი

52: ხოლო (<>) {

53: s/[\x0A\x0D]+$//;

54: ჩემი @f=split /\x09/;

55: ჩემი $lh=shift @f;

56: ჩემი ($name, $USd, $rub)=რუქა () @f;

57: თუ ($lh) (

58: if ($name->eq $TRUE) ( # პროცესის სექციის სათაური

59: ბეჭდვა"

\n";

62: ) else (# დამუშავების რეგულარული სტრიქონი

63: ბეჭდვა<<"TEXT" .

64:

65: onMouseOver="this.className="al";"

66: onMouseOut="this.className = "";">

\n \n \n";

80: }

81: ბეჭდვა<<"TEXT";

82:

83:

84: ტექსტი

85: ) სხვა (

86: warn "დამალული ხაზი: ".$name->."\n";

87: }

88: }

90: ბეჭდვა<<"TEXT";

91:

გარკვეული კომპანიის ფასების სია
პროდუქტის სახელი ფასი
გ.უ. რუბლს შეადგენს.
" .

60: $name-> .

61: "

67: ტექსტი

68: ($name->eq $TRUE?" ":"") .

69: qtstring($name->) .

70: ($name->eq $TRUE?"":"") .

71: qq|

| .

72: ($ usd->eq 

$TRUE?" ":"") .

73: qtnum ($ usd->) .

74: ($usd->eq $TRUE?"":"") .

75:qq|

| .

76: ($rub->eq 

$TRUE?" ":"") .

77: qtnum ($rub->) .

78: ($rub->eq $TRUE?"":"") .

79: "

92:

93:

94: ტექსტი

სკრიპტი იღებს შეყვანას ფაილიდან, რომელიც მითითებულია ბრძანების ხაზის პარამეტრად ან სტანდარტული შეყვანიდან და გამოაქვს HTML კოდი სტანდარტულ გამომავალზე. ანუ შეგიძლიათ გაუშვათ ასე:

perl file2html.pl file.txt >file.html

ან, მაგალითად, ასე:

cat file.txt | perl file2html.pl >file.html

მოდით გავარკვიოთ, როგორ მუშაობს ეს სცენარი (ვვარაუდობ, რომ მკითხველი გარკვეულწილად იცნობს პერლს).

პირველი ხაზი არის ნებისმიერი UNIX სკრიპტის სტანდარტული ჯადოსნური ხაზი. Windows-ის მომხმარებლებს შეუძლიათ მისი იგნორირება. მესამე სტრიქონი შეიცავს კომენტირებული გამოყენების მკაცრი ინსტრუქციას. ის გამოგადგებათ მხოლოდ გამართვისთვის.

მე-5 და მე-6 სტრიქონებზე ჩვენ განვსაზღვრავთ $TRUE და $FALSE ცვლადებს, რომლებიც შეიცავს Excel-ის წარმოქმნილ ჭეშმარიტ და ცრუ მნიშვნელობებს. ფაქტია, რომ რუსული Excel იყენებს რუსულ სიტყვებს, ევროპული Excel იყენებს ინგლისურს. დააკომენტარეთ ის ხაზი, რომელიც თქვენთვის შესაფერისია და კომენტარი გააკეთეთ დამატებითზე.

qtnum პროცედურა (სტრიქონები 8-დან 12-მდე) ამატებს ტეგებს რიცხვის ჩანაწერში და აქცევს "3,14"-ს "3, 14" ანუ ცენტები და პენი უფრო პატარა შრიფტით იქნება ნაჩვენები. ეს არის წმინდა კოსმეტიკური ღონისძიება.

qtstring პროცედურა (სტრიქონები 13-დან 21-მდე) კვოტირებს "არაუსაფრთხო" სიმბოლოებს: & (და), " (ორმაგი ციტატა),< (больше), >(ნაკლები). ეს, როგორც გესმით, სავალდებულო ღონისძიებაა.

სტრიქონები 23-დან 50-მდე ბეჭდავს HTML დოკუმენტის სათაურს.

IN ხოლო მარყუჟი(სტრიქონები 52-დან 88-მდე) ჩვენ ვკითხულობთ შეყვანის ფაილს სტრიქონ-სტრიქონში, ვაქცევთ მას HTML დოკუმენტად და გამოვიყვანთ stdout-ში.

53-ე სტრიქონში, ხაზის ბოლოს სიმბოლო(ები) მოწყვეტილია შემდეგი წაკითხული სტრიქონიდან. მე არ ვიყენებ სტანდარტულ Perl chop და chomp ფუნქციებს, რადგან დამუშავებული ფაილი იქმნება Windows-ის ქვეშ და დამმუშავებელი (ჩვენი Perl სკრიპტი) შეიძლება იმუშაოს UNIX-ის ქვეშ. ფაილის გადაცემა შესაძლებელია ძალიან ეგზოტიკური გზებით. მაგალითად, ბევრს მოუნდება ოდნავ შეცვალოს ჩემი კოდი და გადააქციოს ის CGI აპლიკაციად საკუთარი სერვერის ადმინისტრირებისთვის. ამიტომ, მე არ ვეყრდნობი სტანდარტულ ფუნქციებს, მაგრამ ცალსახად ვაცხადებ, რომ მჭირდება ყველა \x0A და \x0D სიმბოლოების ამოღება ხაზის ბოლოს.

პირველი ველი, ხაზის სიმაღლე, ინახება $lh ცვლადში (სტრიქონი 55). ყველა სხვა ველი იყოფა ქვეველებად. შედეგად, ცვლადებს $name, $usd, $rub ენიჭებათ მაჩვენებლები მასივებს, რომლებიც შეიცავს ყველა საჭირო ინფორმაციას შესაბამისი უჯრედის შინაარსისა და ფორმატირების შესახებ. $name – უჯრედი პროდუქტის სახელწოდებით, $usd – უჯრედი ფასი დოლარში, $rub – უჯრედი ფასით რუბლებში. ეს კეთდება ერთი ხაზით 56.

თუ ხაზის სიმაღლე არ არის ნული, მაშინ ჩვენ ვასრულებთ ბლოკს 58-დან 84-მდე ხაზებიდან. წინააღმდეგ შემთხვევაში, ჩვენ გავაფრთხილებთ stderr-ს, რომ ფარული ხაზი იქნა აღმოჩენილი და იგნორირებული (სტრიქონი 86).

ცხრილის რიგების დამუშავება ერთი შეხედვით შეიძლება რთული ჩანდეს.

უპირველეს ყოვლისა, გავარკვევთ, რასთან გვაქვს საქმე: 58-ე სტრიქონზე ვამოწმებთ უჯრედის .MergeCells თვისების სიმართლეს პროდუქტის სახელწოდებით. თუ ეს უჯრედი გაერთიანდა, მაშინ ეს არის განყოფილების სათაური, მაშინ შესრულებულია კოდი, რომელიც ქმნის სათაურს (ხაზები 59-დან 61-მდე).

თუ აღმოჩნდება, რომ საქმე გვაქვს ჩვეულებრივ სტრიქონთან, მაშინ სხვა ბლოკი შესრულებულია (63-დან 79-მდე სტრიქონები). აქ იქმნება HTML ცხრილის მწკრივი, რომელშიც ჩასმულია ფორმატირების დამატებითი ელემენტები (იმ ცხრილის რიგებისთვის, სადაც ეს აუცილებელია).

გთხოვთ გაითვალისწინოთ, რომ ჩვენ ჩავუშვით ძირითადი DHTML ხრიკი ჩვენს დოკუმენტში. ცხრილში ყოველთვის მონიშნულია ის მწკრივი, რომელზედაც მდებარეობს მაუსის მაჩვენებელი. ეს აადვილებს ცხრილის წაკითხვას. დამეთანხმებით, რომ რთულია ასეთი ეფექტის მიღწევა Excel-ის გამოყენებით (დოკუმენტის ვებ გვერდად შენახვით).

90–94 სტრიქონებში ჩვენ ვბეჭდავთ დოკუმენტის ბოლო ტეგებს. გთხოვთ გაითვალისწინოთ, რომ პროგრამის ფაილის ბოლოს ცარიელი ხაზი უნდა იყოს. წინააღმდეგ შემთხვევაში, ბოლო სიტყვა ("TEXT") (სტრიქონი 94) არ იქნება სწორად გაანალიზებული Perl-ის თარჯიმნის მიერ.

გამოსავლისთვის იხილეთ სურათი (გვერდი 82).

გეთანხმები, იყო რაღაც საბრძოლველად!

შეცდომები. კიდევ რა შეგიძლიათ დაამატოთ?

ეჭვი არ მეპარება, რომ მიუხედავად იმისა, რომ ჩემი მაგალითები სრულად ფუნქციონირებს, ცოტა ადამიანი გამოიყენებს მათ ოდნავი ცვლილების გარეშე. მსურს ორიოდე ფიქრი განვიხილო იმაზე, თუ რა შეიძლება გაუმჯობესდეს ამ სკრიპტებში, რათა მათი მოდიფიცირებისას არ გააკეთოთ ზედმეტი სამუშაო, არამედ მოკლათ რაც შეიძლება მეტი ფრინველი ერთი ქვით.

სკრიპტირებულია Visual Basic-ში

აქ დიდი ალბათობით მოგიწევთ შენახული უჯრედის პარამეტრების ნაკრების შეცვლა. მე გთავაზობთ ყველაზე სასარგებლოთა ჩამონათვალს ამ სცენარის განხილვისას. თუ რამე ეგზოტიკური გჭირდებათ, იხილეთ Microsoft-ის დოკუმენტაცია, Range ობიექტის თვისებები.

ალბათ, ბევრი ჩათვლის ხარვეზად, რომ მაკრო რა თქმა უნდა ცვლის არსებულ ფაილებს (თუ მიუთითებთ შენახვას არსებული ფაილი). ეს, როგორც გესმით, ადვილი გამოსასწორებელია.

ალბათ, რეალური დოკუმენტებისთვის ძნელი არ იქნება იმ პირობების ჩამოყალიბება, რომლითაც მაკრო თავად განსაზღვრავს შესანახი ფასების სიის (ან სხვა დოკუმენტის) ფართობს. შემდეგ ეს პროცესი შეიძლება ავტომატიზირებული იყოს. ჩემი გამოსავალი (შერჩეული ტერიტორიის შენახვა) უფრო უნივერსალურია, ვიდრე მოსახერხებელი.

დაბოლოს, მკითხველმა შეიძლება სამართლიანად იკითხოს, რატომ ინახავს მაკრო Excel-ისთვის დამალულ რიგებს, რადგან მათი აღმოფხვრა შესაძლებელია უკვე ექსპორტის ეტაპზე? ქუდს ვიხსნი მკითხველის ყურადღების წინაშე (ფარულად ვიმედოვნებ ჩემი გამჭრიახობის მიმართ საპასუხო ჟესტს). დამალული რიგების შენახვა ნამდვილად არ არის საჭირო, უბრალოდ მიჩვეული ვარ ყველაფრის შენახვას. მიზეზები? შესაძლოა, ფარული ხაზები მაინც დაგჭირდეთ. ან შეიძლება გსურდეთ ზუსტად იცოდეთ რომელი სტრიქონები იყო იგნორირებული (ჩემი Perl სკრიპტი, როგორც გახსოვთ, იუწყება ყველა ფარული ხაზი). გარდა ამისა, ხაზის სიმაღლის ინფორმაცია შეიძლება იყოს სათაურის იდენტიფიცირების კრიტერიუმი... თუმცა, რა თქმა უნდა, შეგიძლიათ ოდნავ შეცვალოთ VB კოდი და არ შეინახოთ ფარული ხაზები.

პერლის სკრიპტი

რა თქმა უნდა, თქვენ დიდი ალბათობით შეცვლით მთელ HTML კოდს (რომელიც სკრიპტის უმეტესი ნაწილია). რა თქმა უნდა, მოგიწევთ სვეტების რაოდენობის, სათაურის შეცვლა, ბევრი ამოიღებს ჩემს ცარიელ გამყოფ ხაზებს HTML კოდიდან, დაამატებს ჩადგმულ ცხრილებს, შეცვლის DHTML ფუნქციებს, დაამატებს CSS ცხრილებს... მაგრამ ეს არ არის ყველაზე მნიშვნელოვანი ან ფუნდამენტური ცვლილება.

დიდი ალბათობით მოგიწევთ ამ სკრიპტის „ასწავლა“ დიდი დოკუმენტების სექციებად დაყოფა და ამ სექციების შენახვა სხვადასხვა ფაილი, რადგან ძალიან საშუალო კომპანიის ფასების სია HTML ფორმატში შეიძლება იყოს ასობით კილობაიტი. ყველა ბრაუზერი არ დაელოდება ასეთი დოკუმენტის ჩამოტვირთვის დასრულებას. შეიძლება დაგჭირდეთ დახარისხების დამატება (თუ დაბეჭდილი ფასების სიაში და ვებ ფასთა სიაში ნივთები უნდა იყოს განსხვავებული თანმიმდევრობით).

უდავოდ გამოადგება მიმდინარე ფასთა სიის წინასთან შედარების ფუნქცია, რომელიც დაამატებს ინფორმაციას განახლებებისა და ფასების დინამიკის შესახებ.

მე ვურჩევდი მსგავსი პროცედურების ორგანიზებას (პირდაპირ არ არის დაკავშირებული HTML განლაგებასთან) ცალკეული პროგრამების ან მოდულების სახით. სხვათა შორის, HTML განლაგებაზე მუშაობის ნაწილი შეიძლება მიანდოს SSI მექანიზმს და სკრიპტმა შეაგროვოს SHTML დოკუმენტი. მარტივი ხელსაწყოების ნაკრები ყოველთვის უფრო მოსახერხებელი, მოქნილი და მართვადია, ვიდრე ერთი უნივერსალური. თავი შორს დაიჭირეთ საკომისიოსგან, სადაც დადიან მიკროტალღური ტელეფონისა და კბილის ჯაგრისის ტელევიზორის შემქმნელები.

რჩევებისა და წინადადებების ჩამონათვალი შეიძლება უსასრულოდ გაგრძელდეს, მაგრამ ვფიქრობ, რომ უკვე გავაღვიძე თქვენი ფანტაზია და თქვენ შეგიძლიათ უჩემოდ გაუმკლავდეთ შემდგომ. აქ მოცემული მაგალითის თქვენს კონკრეტულ პირობებთან ადაპტაციას შეიძლება დასჭირდეს რამდენიმე საათის მუშაობა. მაგრამ შემდეგ თქვენ უხვად დაჯილდოვდებით, რადგან თქვენს ვებ სერვერზე ინფორმაციის ყველა შემდგომი განახლება განხორციელდება კლავიატურისა და მაუსის მხოლოდ რამდენიმე შეხებით!


საჭიროა ცხრილის კონვერტაცია HTML გაფართოება Excel ფორმატში შეიძლება მოხდეს სხვადასხვა შემთხვევაში. შეიძლება დაგჭირდეთ ვებ გვერდის მონაცემების კონვერტაცია ინტერნეტიდან ან HTML ფაილებიდან, რომლებიც ადგილობრივად გამოიყენებოდა სხვა მიზნებისთვის სპეციალური პროგრამები. ხშირად კონვერტაცია ხორციელდება ტრანზიტში. ანუ, ისინი ჯერ ცხრილს HTML-დან XLS-ში ან XLSX-ში გადააქვთ, შემდეგ ამუშავებენ ან არედაქტირებენ და შემდეგ ისევ გარდაქმნიან ფაილად იგივე გაფართოებით, რათა შეასრულოს მისი თავდაპირველი ფუნქცია. ეს იმის გამო ხდება, რომ Excel-ში ცხრილებთან მუშაობა ბევრად უფრო ადვილია. მოდით გავარკვიოთ, თუ როგორ შეგიძლიათ გადაიყვანოთ ცხრილი HTML ფორმატიდან Excel-ში.

HTML ფორმატი არის ენა ჰიპერტექსტის მარკირება. ამ გაფართოების მქონე ობიექტები ყველაზე ხშირად გამოიყენება ინტერნეტში, როგორც სტატიკური ვებ გვერდები. მაგრამ ხშირად ისინი შეიძლება გამოყენებულ იქნას ადგილობრივი საჭიროებისთვის, მაგალითად, როგორც დამხმარე დოკუმენტები სხვადასხვა პროგრამებისთვის.

თუ ჩნდება კითხვა HTML-დან Excel ფორმატებში გადაყვანის შესახებ, კერძოდ, XLS, XLSX, XLSB ან XLSM, მაშინ გამოუცდელ მომხმარებელს შეუძლია თავი აარიდოს. მაგრამ სინამდვილეში აქ არაფერია საშინელი. Excel-ის თანამედროვე ვერსიებში კონვერტაცია პროგრამის ჩაშენებული ხელსაწყოების გამოყენებით საკმაოდ მარტივია და უმეტეს შემთხვევაში შედარებით სწორი. გარდა ამისა, შეგვიძლია ვთქვათ, რომ თავად პროცესი ინტუიციურია. თუმცა, რთულ შემთხვევებში შეგიძლიათ გამოიყენოთ მესამე მხარის კომუნალური მომსახურება. მოდით შევხედოთ HTML-ის Excel-ში გადაყვანის სხვადასხვა ვარიანტს.

მეთოდი 1: მესამე მხარის პროგრამების გამოყენება

მოდით დაუყოვნებლივ გავამახვილოთ ყურადღება გამოყენებაზე მესამე მხარის პროგრამებიფაილების HTML ფორმატიდან Excel-ში კონვერტაციისთვის. უპირატესობები ეს ვარიანტიმდგომარეობს იმაში, რომ სპეციალიზებულ კომუნალურ კომპანიებს შეუძლიათ გაუმკლავდნენ თუნდაც ძალიან რთული ობიექტების კონვერტაციას. მინუსი ის არის, რომ მათი დიდი უმრავლესობა ფასიანია. გარდა ამისა, on მომენტშითითქმის ყველა წესიერი ვარიანტი არის ინგლისურ ენაზე რუსიფიკაციის გარეშე. მოდით შევხედოთ ერთ-ერთ ყველაზე მეტში მუშაობის ალგორითმს მოსახერხებელი პროგრამებიზემოაღნიშნული კონვერტაციის მიმართულების შესასრულებლად - Abex HTML to Excel Converter.

  1. Abex HTML to Excel Converter პროგრამის ინსტალატორის ჩამოტვირთვის შემდეგ, გაუშვით იგი შესრულებით ორმაგი დაწკაპუნებითმაუსის მარცხენა ღილაკი. იხსნება ინსტალერის მისასალმებელი ფანჯარა. დააჭირეთ ღილაკს "შემდეგი" ("შემდეგი").
  2. ამის შემდეგ იხსნება სალიცენზიო ხელშეკრულების ფანჯარა. იმისათვის, რომ დაეთანხმოთ მას, თქვენ უნდა დააყენოთ გადამრთველი პოზიციაზე "მე ვეთანხმები შეთანხმებას"და დააჭირეთ ღილაკს "შემდეგი".
  3. ამის შემდეგ, ფანჯარა იხსნება, სადაც მითითებულია, თუ სად დაინსტალირდება პროგრამა. რა თქმა უნდა, თქვენ შეგიძლიათ შეცვალოთ დირექტორია თუ გსურთ, მაგრამ არ არის რეკომენდებული ამის გაკეთება, თუ აბსოლუტურად აუცილებელი არ არის. ასე რომ უბრალოდ დააჭირეთ ღილაკს "შემდეგი".
  4. მომდევნო ფანჯარაში მითითებულია, თუ რა იქნება პროგრამის სახელი, რომელიც ნაჩვენებია დაწყების მენიუში. აქ ასევე შეგიძლიათ უბრალოდ დააჭიროთ ღილაკს "შემდეგი".
  5. მომდევნო ფანჯარაში თქვენ მოგეთხოვებათ დააინსტალიროთ კომუნალური ხატულა დესკტოპზე (ჩართულია ნაგულისხმევად) და პანელზე უჯრების მონიშვნით. სწრაფი გაშვება. ჩვენ ვაყენებთ ამ პარამეტრებს ჩვენი პრეფერენციების მიხედვით და დააჭირეთ ღილაკს "შემდეგი".
  6. ამის შემდეგ იხსნება ფანჯარა, რომელიც აჯამებს ყველა ინფორმაციას პროგრამის ინსტალაციის ყველა პარამეტრის შესახებ, რომელიც მომხმარებელმა ადრე გააკეთა. თუ მომხმარებელი რაღაცით არ არის კმაყოფილი, მას შეუძლია დააჭიროს ღილაკს "უკან"და შესაბამისად შეცვალეთ პარამეტრები. თუ ის ეთანხმება ყველაფერს, მაშინ ინსტალაციის დასაწყებად უნდა დააჭიროთ ღილაკს "ინსტალაცია".
  7. კომუნალური ინსტალაციის პროცესი მიმდინარეობს.
  8. მისი დასრულების შემდეგ იხსნება ფანჯარა, რომელშიც არის მოხსენებული ამის შესახებ. თუ მომხმარებელს სურს დაუყოვნებლივ დაიწყოს პროგრამა ავტომატურად, მაშინ მან უნდა უზრუნველყოს ეს პარამეტრის გვერდით "გაუშვით Abex HTML to Excel Converter"ჩამრთველი შემოწმებულია. წინააღმდეგ შემთხვევაში, თქვენ უნდა ამოიღოთ იგი. ინსტალაციის ფანჯრიდან გასასვლელად დააჭირეთ ღილაკს "დასრულება".
  9. მნიშვნელოვანია იცოდეთ, რომ Abex HTML to Excel Converter პროგრამის გაშვებამდე, არ აქვს მნიშვნელობა როგორ კეთდება ეს, ხელით თუ აპლიკაციის დაინსტალირებისთანავე, უნდა გამორთოთ და დახუროთ ყველა პროგრამა პაკეტში. Microsoft Office. თუ ამას არ გააკეთებთ, მაშინ როდესაც ცდილობთ გახსნათ Abex HTML to Excel Converter, გაიხსნება ფანჯარა, რომელშიც თქვენ მიიღებთ ინფორმაციას შესრულების აუცილებლობის შესახებ. ამ პროცედურას. კომუნალურ პროგრამასთან მუშაობის დასაწყებად, თქვენ უნდა დააჭიროთ ღილაკს ამ ფანჯარაში "დიახ". თუ ამავე დროს საოფისე დოკუმენტებიღიაა, მათში მუშაობა იძულებით შეწყდება და ყველა შენახული მონაცემი დაიკარგება.
  10. ამის შემდეგ გაიხსნება რეგისტრაციის ფანჯარა. თუ თქვენ შეიძინეთ სარეგისტრაციო გასაღები, მაშინ შესაბამის ველებში უნდა შეიყვანოთ მისი ნომერი და თქვენი სახელი (ასევე შესაძლებელია) და შემდეგ დააჭირეთ ღილაკს "რეგისტრაცია". თუ გასაღები ჯერ არ გიყიდიათ და გსურთ სცადოთ იგი მოჭრილი ვერსიააპლიკაცია, შემდეგ ამ შემთხვევაში უბრალოდ დააჭირეთ ღილაკს "მოგვიანე შემახსენე".
  11. ზემოაღნიშნული ნაბიჯების დასრულების შემდეგ, პირდაპირ იხსნება Abex HTML to Excel Converter პროგრამის ფანჯარა. HTML ფორმატში ფაილის დასამატებლად კონვერტაციისთვის დააჭირეთ ღილაკს "ფაილების დამატება".
  12. ამის შემდეგ იხსნება ფაილის დამატების ფანჯარა. მასში თქვენ უნდა გადახვიდეთ კატეგორიაში, სადაც მდებარეობს კონვერტაციისთვის განკუთვნილი ობიექტები. შემდეგ თქვენ უნდა მონიშნოთ მათი უპირატესობა ამ მეთოდითსტანდარტული HTML-ის Excel-ში კონვერტაციის უპირატესობა ის არის, რომ თქვენ შეგიძლიათ აირჩიოთ და დააკონვერტიროთ რამდენიმე ობიექტი ერთდროულად. ფაილების შერჩევის შემდეგ დააჭირეთ ღილაკს "გახსენი".
  13. არჩეული ობიექტები გამოჩნდება მთავარ კომუნალურ ფანჯარაში. ამის შემდეგ, დააწკაპუნეთ მარცხენა ქვედა ზღვარზე, რათა აირჩიოთ სამი Excel ფორმატიდან ერთ-ერთი, რომელშიც შეგიძლიათ გადაიყვანოთ ფაილი:
    • XLS (ნაგულისხმევი);
    • XLSX;
    • XLSM (მაკრო მხარდაჭერით).

    ჩვენ ვაკეთებთ არჩევანს.

  14. ამის შემდეგ გადადით პარამეტრების ბლოკზე "გამომავალი პარამეტრი" ("გამომავალი პარამეტრები"). აქ ზუსტად უნდა მიუთითოთ, სად შეინახება გარდაქმნილი ობიექტები. თუ გადამრთველს დააყენებთ პოზიციაზე "სამიზნე ფაილ(ებ)ის შენახვა წყაროს საქაღალდეში", შემდეგ ცხრილი შეინახება იმავე დირექტორიაში, სადაც მდებარეობს HTML ფორმატის წყარო. თუ გსურთ ფაილების შენახვა ცალკე საქაღალდე, შემდეგ ამისათვის თქვენ უნდა გადაიტანოთ გადამრთველი პოზიციაზე "მორგება". ამ შემთხვევაში, ნაგულისხმევად, ობიექტები შეინახება საქაღალდეში "გამომავალი", რომელიც თავის მხრივ მდებარეობს დისკის root დირექტორიაში C.

    თუ გსურთ მიუთითოთ ობიექტის შენახვის ადგილი, უნდა დააჭიროთ ღილაკს, რომელიც მდებარეობს მისამართის ველის მარჯვნივ.

  15. ამის შემდეგ, ფანჯარა იხსნება საქაღალდეების მიმოხილვით. თქვენ უნდა გადახვიდეთ დირექტორიაში, რომელიც გსურთ დანიშნოთ შენახვის ადგილს. შემდეგ თქვენ უნდა დააჭიროთ ღილაკს "კარგი".
  16. ამის შემდეგ შეგიძლიათ პირდაპირ გადახვიდეთ კონვერტაციის პროცედურაზე. ამისათვის დააჭირეთ ღილაკს ზედა პანელზე "კონვერტირება".
  17. შემდეგ შესრულდება კონვერტაციის პროცედურა. მისი დასრულების შემდეგ, გაიხსნება პატარა ფანჯარა, რომელიც გაცნობებთ ამის შესახებ და ასევე ავტომატურად ამოქმედდება Windows Explorer დირექტორიაში, სადაც კონვერტირებული Excel ფაილები მდებარეობს. ახლა თქვენ შეგიძლიათ განახორციელოთ შემდგომი მანიპულაციები მათთან.

მაგრამ თქვენ უნდა გაითვალისწინოთ, რომ თუ იყენებთ უფასო საცდელი ვერსიაუტილიტა, მაშინ დოკუმენტის მხოლოდ ნაწილი გარდაიქმნება.

მეთოდი 2: კონვერტაცია სტანდარტული Excel ინსტრუმენტების გამოყენებით

თქვენ ასევე შეგიძლიათ მარტივად გადაიყვანოთ HTML ფაილი Excel ფორმატში ამ აპლიკაციის სტანდარტული ხელსაწყოების გამოყენებით.


ასევე არსებობს კიდევ ერთი ვარიანტი დოკუმენტის შენახვის ფანჯარაში გადასასვლელად.


როგორც ხედავთ, ფაილის HTML-დან Excel ფორმატში გადაყვანა საკმაოდ მარტივია გამოყენებით სტანდარტული იარაღებიამ პროგრამის. მაგრამ იმ მომხმარებლებისთვის, ვისაც სურს მიიღოს დამატებითი ფუნქციები, მაგალითად, ობიექტების მასობრივი კონვერტაციის განსახორციელებლად მითითებული მიმართულებით, ჩვენ შეგვიძლია გირჩიოთ შეიძინოთ ერთ-ერთი სპეციალიზებული ფასიანი კომუნალური მომსახურება.

მაგალითად, ავიღოთ Excel ცხრილი, რომელიც შედგება 4 სვეტისა და 12 მწკრივისაგან.
სვეტი A - ერთეულების ნუმერაცია ხაზის ერთეულების ზრდის მიხედვით
სვეტი B - ნივთების რაოდენობა
სვეტი C - ერთი ნივთის ფასი
სვეტი D - ნივთების ღირებულების ჯამი ერთ სტრიქონში, როგორც პროდუქტის ფასისა და მათი რაოდენობა
სვეტი D უჯრედი D12 - ყველა ნივთის ღირებულების ჯამი

ცხადია, რომ ცხრილი თავად არის ფორმაში excelფაილი არ შეიძლება განთავსდესსაიტის მასალებში მრავალი მიზეზის გამო. მისი განთავსება და მონაცემების ტექსტური წარმოდგენის სახით გამოქვეყნება გჭირდებათ კონვერტაცია HTMLთავსებადი ფორმატი.

ჯერ ვამატებთ ცხრილის წინ კიდევ ერთი ხაზი, ხაზი გაუსვა წითელი ჩარჩო .
შემდეგ ყოველი ცხრილის სვეტის წინ ვამატებთ კიდევ ერთი სვეტი, დაამატეთ კიდევ 4 სვეტი, მონიშნული მწვანე ჩარჩოები .

შედეგად, ჩვენ ვიღებთ ცხრილს, რომელიც შედგება 8 სვეტისა და 13 სტრიქონისგან.

უჯრედამდე A1დაწერე როგორც ტექსტი HTMLმაგიდის ტეგი


უჯრედების დიაპაზონისთვის A2-A11სვეტის თითოეული უჯრედის წინ პირველებს ვწერთ ტექსტის სახით HTMLმწკრივისა და უჯრედის ტეგები
უჯრედამდე I14დაწერე დახურვის ტექსტი ტექსტის სახით HTMLმაგიდის ტეგი

უჯრედების დიაპაზონისთვის C2-C11 , E2-E11 , G2-G11 ყოველი სვეტის უჯრედის წინ , და დაწერე დახურვა და გახსნა ტექსტად HTMLუჯრედის ტეგები

უჯრედების დიაპაზონისთვის I2-I13სვეტის ყოველი უჯრედის შემდეგ დაწერე დახურვის ტექსტი HTMLუჯრედისა და მწკრივის ტეგები

უჯრედების გვერდით A12და A13ჩაწერეთ გახსნის ტექსტი HTMLხაზის ტეგი და გახსნა HTMLუჯრედის ტეგი ატრიბუტით კოლსპანიხაზებში გაერთიანება 12 და 13 სვეტები , და ერთ საკანში

შედეგად, ჩვენ ვიღებთ ცხრილს, რომელიც ივსება ორივე საწყისი მონაცემებით excelფორმატი და HTML ტეგებიტექსტის სახით.

შემდეგში Excel რედაქტორი, აირჩიეთ ცხრილი დიაპაზონში A1-I13, პროგრამის მენიუში აირჩიეთ ბრძანება "შენახვა როგორც"და შეინახეთ არჩეული ფრაგმენტი როგორც ტექსტური ფაილი(მაგალითად - tabltxt.txt), დაშიფვრას მნიშვნელობა არ აქვს, შეგიძლიათ შეინახოთ კოდირებულად UTF-8და კოდირებით Ms-DOS. Excel აჩვენებს გამაფრთხილებელ ფანჯარას:

დააჭირეთ ღილაკს "კარგი"და Excel კვლავ აჩვენებს გამაფრთხილებელ ფანჯარას:

დააჭირეთ ღილაკს "დიახ"და შერჩეული ფრაგმენტი შეინახება ტექსტურ ფაილად tabltxt.txt

შემდეგი, ჩვენ გადავიტანთ შემდგომ მუშაობას HTML რედაქტორზე, დანარჩენი ყველაფერი ასევე შეიძლება გაკეთდეს მარტივად ტექსტის რედაქტორი, მაგრამ ვარიანტი HTML რედაქტორით უფრო სასურველია.

ფაილის გახსნა tabltxt.txtნებისმიერ ტექსტურ რედაქტორში აირჩიეთ ყველა შინაარსი ტექსტად და ჩასვით HTMLრედაქტორი შიგნით HTML რეჟიმი. ჩვენ ვიღებთ შემდეგ საწყისს HTML ტექსტიმაგიდები. თქვენ ასევე შეგიძლიათ აირჩიოთ შენახული ფაილი Excel-დან. განსხვავება მხოლოდ ის იქნება, რომ შენახული ფაილის კოდირებიდან გამომდინარე, "არტეფაქტები"დამატებითი სიმბოლოების სახით, როგორც ჩანს სკრინშოტი უჯრედებში ( " " ).

შემდეგ ჩვენ წავშლით ყველაფერს "არტეფაქტები"თუ არის და ყველა სივრცე. ჩვენც ვწერთ CSS სტილიცხრილის უჯრედებისთვის: td (შეფუთვა: 1px 12px; ტექსტის გასწორება: ცენტრში;)შედეგად, ჩვენ ვიღებთ ცხრილის ორიგინალურ HTML ტექსტს HTML ფორმატში. (სკრინშოტი ნაჩვენებია ისე, როგორც არის სტრუქტურული HTML ფორმატირების გარეშე, როგორც ეს გამოიყურება ტექსტის რედაქტორში). ამ ფორმით წყაროცხრილი შესაფერისია გამოსაყენებლად, როგორც HTML მონაცემთა ცხრილი მასალაში გამოსაქვეყნებლად, რადგან ის არის წმინდა HTML ფორმატი.

ცხრილის HTML ფაილად შენახვისა და ბრაუზერში ნახვის შემდეგ მივიღებთ ცხრილის შემდეგ ჩვენებას, რომელიც გადაკეთებულია Excel ფორმატიდან HTML ფორმატში.

ყველა ზემოაღნიშნული მოქმედების მნიშვნელობა ერთ რამეზე მოდის:

1 . ჩამოაყალიბეთ ყოველი ხაზის წინ Excel ცხრილები, HTML ხაზი და HTML უჯრედის დასაწყისი.
2 . შექმენით HTML უჯრედები Excel ცხრილის სვეტებს შორის, ერთის ბოლოს და მეორის დასაწყისს შორის.
3 . ჩამოყალიბდეს excel ცხრილის ყოველი მწკრივის შემდეგ, დამთავრებული HTML უჯრედები და რიგები.
4 . ჩამოაყალიბეთ excel ცხრილის დასაწყისი და დასასრული, HTML ცხრილის დასაწყისი და დასასრული, როგორც ცხრილის ტეგი.

ცხადია, რომ ცხრილის მონაცემების უფრო წარმოუდგენელი ჩვენებისთვის აუცილებელია CSS კლასების ჩაწერა HTML ტეგებირიგები და ცხრილის უჯრედები. მაგალითად, შეწევის, შრიფტის ფერისა და სტილის, საზღვრების და სხვა დიზაინის ატრიბუტებით. მაგრამ ეს ცალკე თემაა, რომელიც ამ მასალაში არ არის განხილული.....