Arkadaslar bi firmada calisiyorum basimda cok büyük sorun var ve nasil yapacagimi bilemiyorum. O yüzden googleda biseyler ararken sizi gördüm ve bayagi bi yardimci oldugunuzu farkettim eger banada yardimlariniz dokunursa cok sevinirim.
Sorunumu anlatmaya calisiyim. Öncelikle amacim benim, excel tabelasindaki bilgileri SQL-sorgusuyla datenbanka koymak. (Terimlerde yanlislik yapabilirim almanyadan yaziyorum cünkü, kusura bakmayin).
Benim Elimdeki tabella üc excelsheets den olusuyor, assagida görülecegi gibi. Bu Tabelalarda bir sisteme giris yapan kullanicilar ve bu kullanicilarin ait oldugu gruplar yer almakta.
Yani bu üc tabellada birbiriyle iliski icerisindeler, $öyleki: Her „Kullanici“ bir grupa ait ve toplamda 15 tane grup var. Ve her grupa ait de Roller var. Yani hangi grupun hangi isleri yapabilecegini belirleyen, bu tabelayida ”Gruplar ve Haklari ” diye isimlendirdim. Ve en son olarakta her Rollünde yapabilecegi i$ler var, yani müsadeleri var (örnegin bi yaziyi okuma, yada bi yaziyi degistirme felan gibi).
Simdi benim simdiye kadar yapabildigim „Kullanici“ tabelasindaki kullanicilarin bilgilerini okuyup sql haline cevirmek, yani su scripti yazdim:
Sub GenerateUser()
Dim range As range
Dim ID As String
Dim username As String
Dim vorname As String
Dim nachname As String
Dim kuerzel As String
Dim teldurchwahl As String
Dim telnummer As String
Dim fax As String
Dim servicetelnummer As String
Dim mobilnummer As String
Dim signatur As String
Dim IDwinBK As String
Dim IDcrmKV As String
Dim csql As String
' Set range = ActiveWorkbook.Sheets("User").range("B9:AJ261")
Set range = ActiveWorkbook.Sheets("User").range("B200:AJ261")
' Gibt ein Nachrichtenfenster aus
MsgBox (range.Rows.Count)
For i = 1 To range.Rows.Count
ID = range.Cells(i, 6).Text
nachname = range.Cells(i, 3).Text
vorname = range.Cells(i, 4).Text
username = range.Cells(i, 6).Text
kuerzel = range.Cells(i, 7).Text
teldurchwahl = range.Cells(i, 8).Text
telnummer = range.Cells(i, 9).Text
fax = range.Cells(i, 10).Text
servicetelnummer = range.Cells(i, 11).Text
mobilnummer = range.Cells(i, 12).Text
signatur = range.Cells(i, 13).Text
IDwinBK = range.Cells(i, 14).Text
IDcrmKV = range.Cells(i, 15).Text
Sql = "INSERT INTO " & "`cm_sec_user`" & " VALUES ( " & vbNewLine & vbTab & "'" & ID & "'" & "," & " " & "'" & username & "'" & "," & " " & "'" & "827ccb0eea8a706c4c34a16891f84e7b" & "'" & "," & " " & "'" & vorname & "'" & "," & " " & "'" & nachname & "'" & "," & " " & "'" & kuerzel & "'" & "," & " " & " NULL " & "," & " " & "NULL" & "," & " " & "NULL" & "," & " " & "NULL" & "," & " " & "'" & "Y" & "'" & "," & " " & "NULL" & "," & " " & "NULL" & ");" & vbNewLine
csql = csql + Sql
Next
MsgBox (csql)
ActiveWorkbook.Sheets("Test").range("A3").Value = csql
End Sub
Simdi benim bu scriptim bütün kullanicilarin bilgilerini aliyo, baska bi tabellada belirttigim (ActiveWorkbook.Sheets("Test").range("A3").Value = csql) yere yaziyor. Ama malesef ben Hangi kullanicinin hangi grupa ait oldugunu secemiyorum. Her kullanicinin hangi grupta oldugunu „X“ isareti ile belirtilmis oluyor, yani script gidecek hangi isimin hangi gruba yerlesmis oldugunu görerek onuda yazacak?
Bilmiyorum sorunumu anlatabildimmi? Umarim beni anlamissinizdir?
Acaba bu konuda bana yardimci olabilecek arkadaslar varmi? Eger yardim edebilirseniz cok sevinirim. Tabelanin resmini de koymak istedim ama olmadi beceremedim nasil boardda resim kondugunu.
Sorunumu anlatmaya calisiyim. Öncelikle amacim benim, excel tabelasindaki bilgileri SQL-sorgusuyla datenbanka koymak. (Terimlerde yanlislik yapabilirim almanyadan yaziyorum cünkü, kusura bakmayin).
Benim Elimdeki tabella üc excelsheets den olusuyor, assagida görülecegi gibi. Bu Tabelalarda bir sisteme giris yapan kullanicilar ve bu kullanicilarin ait oldugu gruplar yer almakta.
Yani bu üc tabellada birbiriyle iliski icerisindeler, $öyleki: Her „Kullanici“ bir grupa ait ve toplamda 15 tane grup var. Ve her grupa ait de Roller var. Yani hangi grupun hangi isleri yapabilecegini belirleyen, bu tabelayida ”Gruplar ve Haklari ” diye isimlendirdim. Ve en son olarakta her Rollünde yapabilecegi i$ler var, yani müsadeleri var (örnegin bi yaziyi okuma, yada bi yaziyi degistirme felan gibi).
Simdi benim simdiye kadar yapabildigim „Kullanici“ tabelasindaki kullanicilarin bilgilerini okuyup sql haline cevirmek, yani su scripti yazdim:
Sub GenerateUser()
Dim range As range
Dim ID As String
Dim username As String
Dim vorname As String
Dim nachname As String
Dim kuerzel As String
Dim teldurchwahl As String
Dim telnummer As String
Dim fax As String
Dim servicetelnummer As String
Dim mobilnummer As String
Dim signatur As String
Dim IDwinBK As String
Dim IDcrmKV As String
Dim csql As String
' Set range = ActiveWorkbook.Sheets("User").range("B9:AJ261")
Set range = ActiveWorkbook.Sheets("User").range("B200:AJ261")
' Gibt ein Nachrichtenfenster aus
MsgBox (range.Rows.Count)
For i = 1 To range.Rows.Count
ID = range.Cells(i, 6).Text
nachname = range.Cells(i, 3).Text
vorname = range.Cells(i, 4).Text
username = range.Cells(i, 6).Text
kuerzel = range.Cells(i, 7).Text
teldurchwahl = range.Cells(i, 8).Text
telnummer = range.Cells(i, 9).Text
fax = range.Cells(i, 10).Text
servicetelnummer = range.Cells(i, 11).Text
mobilnummer = range.Cells(i, 12).Text
signatur = range.Cells(i, 13).Text
IDwinBK = range.Cells(i, 14).Text
IDcrmKV = range.Cells(i, 15).Text
Sql = "INSERT INTO " & "`cm_sec_user`" & " VALUES ( " & vbNewLine & vbTab & "'" & ID & "'" & "," & " " & "'" & username & "'" & "," & " " & "'" & "827ccb0eea8a706c4c34a16891f84e7b" & "'" & "," & " " & "'" & vorname & "'" & "," & " " & "'" & nachname & "'" & "," & " " & "'" & kuerzel & "'" & "," & " " & " NULL " & "," & " " & "NULL" & "," & " " & "NULL" & "," & " " & "NULL" & "," & " " & "'" & "Y" & "'" & "," & " " & "NULL" & "," & " " & "NULL" & ");" & vbNewLine
csql = csql + Sql
Next
MsgBox (csql)
ActiveWorkbook.Sheets("Test").range("A3").Value = csql
End Sub
Simdi benim bu scriptim bütün kullanicilarin bilgilerini aliyo, baska bi tabellada belirttigim (ActiveWorkbook.Sheets("Test").range("A3").Value = csql) yere yaziyor. Ama malesef ben Hangi kullanicinin hangi grupa ait oldugunu secemiyorum. Her kullanicinin hangi grupta oldugunu „X“ isareti ile belirtilmis oluyor, yani script gidecek hangi isimin hangi gruba yerlesmis oldugunu görerek onuda yazacak?
Bilmiyorum sorunumu anlatabildimmi? Umarim beni anlamissinizdir?
Acaba bu konuda bana yardimci olabilecek arkadaslar varmi? Eger yardim edebilirseniz cok sevinirim. Tabelanin resmini de koymak istedim ama olmadi beceremedim nasil boardda resim kondugunu.