2016-04-13 16 views
0

ich auf einem Excel arbeitete neu jfor 1 Woche, wo ich geöffnet Excel aktuell geöffnete Datei Datei, vergleichen willVergleichen Sie zwei Arbeitsmappe Blätter Excel VBA

ich alles möglich gemacht, aber wenn ich versuche, um die Zeile zu lesen, ist es nur den Wert aus dem geöffneten lesen, I ‚zugreifen können kippe aktuellen Arbeitsmappe zu lesen, wo ich mein Makro

Sub test1() 
Dim iComp 
Dim sheet As String 
Dim wbTarget As Worksheet 
Dim wbThis As Worksheet 
Dim bsmWS As Worksheet 
Dim c As Integer 
Dim x As Integer 
Dim strValue As String 
Static value As Integer 

Dim myPath As String 
Dim folderPath As String 
k = 3 


Filename = Application.GetOpenFilename("Excel files (*.xls*),*.xl*", Title:="Open data") ' Choosing the Trigger Discription 
'Set wbTarget = ActiveWorkbook.ActiveSheet 
Set theRange = Range("A2:A4") 
c = theRange.Rows.Count 
strValue = vbNullString 
For x = 1 To c 
strValue = strValue & theRange.Cells(x, 1).value 
Next x 


'Set tabWS = Sheets("Tabelle1") 



folderPath = Application.ActiveWorkbook.Path 
myPath = Application.ActiveWorkbook.FullName 
Set bsmWS = Sheets("Tabelle1") 

Set wbkA = Workbooks.Open(Filename:="myPath") 
Set varSheetA = wbkA.Worksheets("Balance sheet").Range(strRangeToCheck) 

Es ist ein 1000-Leitungscode codiert wurde, ich habe gerade nur Schnipsel.

Ich habe myworksheet in der Arbeitsmappe, wo ich programmiert bin. Ich möchte ein anderes Arbeitsblatt öffnen, den Wert übernehmen und mit meinem aktuellen Arbeitsblatt vergleichen. Wenn die Zeichenkette übereinstimmt (ex Bereich (A1: A2)) dann msgbox ja

Antwort

0

Haben Sie versucht, ThisWorkbook.Sheets ("Blattname") zu verwenden. Bereich ("A2: A4") oder ThisWorkbook.ActiveSheet.Range ("A2 : A4 "). Dadurch wird sichergestellt, dass der Verweis auf die Arbeitsmappe erfolgt, in der sich der Code befindet.

Weitere Informationen über Application.ThisWorkbook https://msdn.microsoft.com/en-us/library/office/ff193227.aspx.

+0

es nur einmal überprüfen, wo, wie ich in einer Schleife einchecken muss, m Frage ist, wie ich kann swithc oder, speichern Sie die "Ordnerpfad" Excel-Blatt und in einer einzigen – user2965711

+0

Ich würde zwei Objekte zu deklarieren. Eine für diese Arbeitsmappe, und eine für die Arbeitsmappe Sie vergleichen wollen: Set wbkA = Workbooks.Open : Beobachtet (Dateiname = „myPath“) Set wbkB = Thisworkbook Dann einfach vergleichen verwenden: wenn wbkA .Sheets ("SheetName"). Zelle (1,1) = wbkB.Sheets ("SheetName"). Zellen (1,1) dann msgbox ("Ja") – Danhol86

+0

Set wbkA = Workbooks.Open (Dateiname: = "myPath ") ... Ich bekomme Fehler. – user2965711

Verwandte Themen