Kopieren eines bestimmten Bereichs von Excel-Zellen von einem Arbeitsblatt in ein anderes Arbeitsblatt

8

Ich schreibe ein C # -Programm, das einen Zellbereich von einem Arbeitsblatt einer Arbeitsmappe in ein Arbeitsblatt einer anderen Arbeitsmappe kopiert. Aber das Problem, mit dem ich konfrontiert bin, ist, dass ich nur das gesamte Arbeitsblatt des ersten Arbeitsbuchs kopieren und einfügen kann. Ich möchte wissen, wie Sie nur einen bestimmten Bereich (von Zeile 5 [Spalte 1 bis Spalte 10] bis Zeile 100 [Spalte 1 bis Spalte 10]) auswählen und in das zweite Arbeitsmappen-Arbeitsblatt ab Zeile 2 Spalte 8 einfügen.

Ich möchte auch wissen, wie man eine Spalte von C1 bis C100 mit einem bestimmten Wert auf direkte Weise füllt, anstatt die Schleife wie folgt zu verwenden

%Vor%

Hier ist der Code, den ich bisher geschrieben habe

%Vor%     
Harry 23.08.2014, 15:23
quelle

3 Antworten

2

Für den ersten Teil der Einstellung des gleichen Wertes für den gesamten Bereich, statt der folgenden Schleife funktioniert

  

range1 = workSheet.get_Range ("A1: B100");   range1.Value="Fest";

Und zum Kopieren können Sie versuchen, was @mrtig vorgeschlagen hat.

    
kishore V M 23.08.2014, 17:16
quelle
11

Sie können dies tun:

%Vor%     
mrtig 23.08.2014 16:48
quelle
6

Mrtig hat eine sehr elegante Lösung. Aber es wird nicht funktionieren, wenn Sie die Arbeitsmappen in separaten Instanzen von Excel haben. Also, der Schlüssel ist, sie in nur einer Instanz zu öffnen. Ich habe Ihr Beispiel so geändert, dass es mit diesem Ansatz angezeigt wird:

%Vor%     
Jahmic 07.10.2015 08:58
quelle

Tags und Links