2017-09-07 4 views

Antwort

0

versagt Versuchen Sie, das Blatt zuerst zu aktivieren und dann die Auswahl zu verwenden, aber zuerst brauchen Sie wirklich die Auswahl? Es ist die teuerste Methode, die Sie (noch manchmal erforderlich)

Wenn Sie nur lesen müssen aufrufen/Wert in die Zelle schreiben Sie können es auf diese Weise

Dim wkb as Workbook 
Dim wks as Worksheet 

wkb = Application.Workbooks("Book2.xlsx") 
wks = wb.Sheets("Sheet1") 

System.Windows.Forms.MessageBox.Show(wks.Range("A1").Value2) 
' or use this code for selecting 
' With wks 
' .Activate() ' not really sure you need it, test it 
' .Range("A1").Select 
' End With 
+0

wb = Globals.ThisWorkbook.Application.Workbooks.Open (Dateiname: = Dateiname, nur lesbar: = False) wb.Activate() \t \t \t TemplateSheet = Globals.ThisWorkbook .Sheets.Add (Nach: = Globals.ThisWorkbook.ActiveSheet) \t \t \t TemplateSheet.Activate() TemplateSheet.Cells (1, 1) .select() Auch habe ich versucht, das Blatt zu aktivieren, obwohl es nicht funktioniert – user1844634

+0

I denke, es wirft den Fehler auf der letzten Zeile? Versuchen Sie es, wenn der Befehl zur Blattaktivierung funktioniert. Ich kann jetzt nicht testen, habe kein Visual Studio mit mir. Nur in VBA getestet dieses und es scheint 'Sub test() Dim wkb Als Arbeitsmappe Set wkb = Application.Workbooks.Add Dim wks As Worksheet Set wks = wkb.Sheets.Add wks zu arbeiten. Aktivieren Sie wks.Cells (10, 1). Wählen End Sub' – PetLahev

+0

Ich versuchte mit Blatt aktivieren Befehl. Es funktioniert manchmal, manchmal wirft es den Fehler. Seltsam.. – user1844634

0

wenn Sie einen Bereich verweisen möchten In einem anderen Blatt können Sie die Auswahlmethode nicht verwenden. Sie sollten Ihren Code schreiben, wie folgend

Application.Goto Sheets(1).Range("A1") 
Verwandte Themen