 
			
				19.04.2018, 11:32
			
			
			
		  
	 | 
	
		
		
		
			
			| 
			
				
				
				 Прохожий 
				
				
			 | 
			  | 
			
				
				
					Регистрация: 21.05.2017 
					
					
					Сообщения: 13
 
				Версия Delphi: rad studio xe8 
					Репутация: 10 
					    
				 
				
			 | 
		 
		 
		
	 | 
	
	
	
		
			
			
				 
				
			 
			 
			
		
		
		
		
	Цитата: 
	
	
		| 
			
				 Сообщение от Alegun 
				Ага, понятненько, попытаюсь повторить, заходите к нам немного попозже, результат в этом посте тогда выложу, если чего получится   
З.Ы. Прекрасно ваш код работает, просто в нём мусора навалом, видимо издержки копипасты, второй диалог лишний, зачем-то циклы крутятся, хотя и не используются, да много чего ещё, вот вариант после правки 
	Код: 
	procedure TForm1.Button3Click(Sender: TObject);
var
 exApp,exBook,exBook2,exSh,exSh2: Variant;
begin
  if not OpenDialog1.Execute then exit;
  exApp:= CreateOleObject('Excel.Application');
  exApp.Visible:= false;
  exBook:= exApp.Workbooks.Open(OpenDialog1.FileName);
  exSh:= exApp.ActiveWorkbook.WorkSheets[1];
  if not OpenDialog1.Execute then exit;
  exBook2:= exApp.Workbooks.Open(OpenDialog1.FileName);
  exSh2:= exApp.ActiveWorkbook.WorkSheets[1];
  exSh2.Move(EmptyParam, exBook.WorkSheets[1]);
  exBook.Save;
  exBook.Close;
  exBook2.Close;
  exApp.Quit;
  exApp:= Unassigned;
  ShowMessage('Лист перемещен');
end; 
 углубляться не стал, хотя следовало бы - при вылете, напр. если диалог закроется пустым или что сорвётся, экзель останется висеть в процессах, нужна обработка исключений, но это как говорится, не ходовая  
			
		 | 
	 
	 
 
Лист из файла№2 переносится в файл№1, но ошибка осталась, даже до вывода сообщения, что лист перемещен, не доходит. И я так понимаю надо на каждый файл нажимать который в папке находится. Хотелось просто выделить все файлы в папках и в цикле их открыть перемещать лист сохранять закрывать. Сейчас подумываю, не перемещать лист, а всё с листа скопировать в буфер, открыть другую книгу, добавить в неё лист, присвоить ему нужное имя, и вставить всё. что скопировал из первой книги)  
		
	
		
		
		
		
		
	
		
			
			
			
			
				 
			
			
			
			
		 
		
	
	
	 |