Arama butonu
Bu konudaki kullanıcılar: 1 misafir
77
Cevap
147862
Tıklama
1
Öne Çıkarma
Cevap: VBA & Excel ve Makrolar Örnekler Sorunlar (2. sayfa)
S
19 yıl
Yarbay
Konu Sahibi

http://www.mousetrax.com/TechCourses.html

adresinden ücretsiz e-kitap indirebilirsiniz. Baya işe yarar, fakat hatırlatayım dil malesef ingilizce...


http://www.mindspring.com/~tflynn/excelvba.html

sitesinde örnek kodlar mevcut


http://wordtips.vitalnews.com/W189_VBA_Examples.html

bu sitede de güzel kodlar mevcut





< Bu mesaj bu kişi tarafından değiştirildi serseri -- 1 Ekim 2006; 1:20:03 >
Bu mesaja 2 cevap geldi.
J
19 yıl
Yarbay

teşekkürler arkadaşlar

kitraplar TR olsa idi cok iyi olacakti ama ne yapalim


Bu mesaja 1 cevap geldi.
S
19 yıl
Er

excelde imleç kaybetme hakkında bir bilgisi olan varsa yardımcı olablir mi acaba ??


Bu mesaja 1 cevap geldi.
S
19 yıl
Yarbay
Konu Sahibi

quote:

Orjinalden alıntı: simge_simge

excelde imleç kaybetme hakkında bir bilgisi olan varsa yardımcı olablir mi acaba ??



System.Cursor = wdCursorWait
System.Cursor = wdCursorIBeam
System.Cursor = wdCursorNormal


Ne derece işine yarar bilmiyorum...


Bu mesaja 1 cevap geldi.
T
18 yıl
Onbaşı

Hocam, başka bir çalışma kitabındaki macroyu kendi oluşturacağım çalışma kitabında kullanmak istiyorum. Nasıl yapabilirim?


Bu mesaja 1 cevap geldi.
S
18 yıl
Yarbay
Konu Sahibi

Tam anlayamadım ama muhtemelen aynı kodları yeni bir projede kullanmak istiyorsun. Bunun için yeni projenin altyapısını (algoritması) eski projeye göre ayarlamalısın. Yapılacak ufak değişiklikler ile VB Düzenleyicisine eski kodları yazmalısın. Hepsi bu


Bu mesaja 1 cevap geldi.
S
18 yıl
Yarbay

Notpaddeki dataları excel aktarma konusunda basit bir örnek kod vermek istiyorum ben de. Aynı işlemi 3 farklı şekilde yapacağım.

Referanslar:
Microsoft Scripting Runtime - Dosyalar üzerinde windows işlemlerini yapmak için
Microsoft Excel 11.0 Object Library - Excel otomasyonu için

C nin içinde kullanici1.xls dosyasını ve kullanici1.txt dosyalarını kendim oluşturdum.

kullanıcı1.txtnin içinde: isim-soyad-babaadi-dogum tarihi alt alta sıralanmış farzedelim.Her kişiye 4 satır ayrılmış.
quote:

mustafa
al
ahmet
ankara
mehmet
ali
veli
samsun


 


Private Sub not2ex1()

Open "C:\kullanici" & Trim(Str(1)) & ".txt" For Input As #1 'kullanici1 dosyasını açar
Set ex1 = CreateObject("excel.Application")
ex1.Workbooks.Open ("C:\kullanici1.xls")
kisisayisi = 0
While Not EOF(1)

If EOF(1) Then
GoTo bitir
End If

kisisayisi = kisisayisi + 1
For i = 1 To 4
Line Input #1, satir 'döngü içinde satırları okuyacak

If i = 1 Then
ex1.Range("a" & Trim(Str(kisisayisi))).Value = satir

End If

If i = 2 Then
ex1.Range("b" & Trim(Str(kisisayisi))).Value = satir

End If

If i = 3 Then
ex1.Range("c" & Trim(Str(kisisayisi))).Value = satir

End If
If i = 4 Then
ex1.Range("d" & Trim(Str(kisisayisi))).Value = satir

End If

Next i



Wend

bitir:
ex1.ActiveWorkbook.Save
ex1.Workbooks.Close
Close #1

End Sub



Biz böylelikle excel dosyamızın birinci satırınadaki hücerelere sırasıyla
mustafa al ahmet ankara
mehmet ali veli samsun

yazdık. Bunların üst tarafına başlık yazar gibi "isim" "soyad" "babaadi" "doğumyeri" gibi bilgileri ekleyebilirz.

Yukardaki kod uzun bir yol. Bunun daha kolay bir kaç yolu daha var.


Bu mesaja 1 cevap geldi.
S
18 yıl
Yarbay

Bu da dizi mantığı ile aynı işlemi yapan kod.

ex1.Range(harfler(i) & Trim(Str(kisisayisi))).Value = satir

bu kod satırı yıkardaki iflerin yaptığı işi tek başına yapıyor.


 
Dim harfler(100) As String

Private Sub not2ex1_2()

harfler(1) = "b"
harfler(2) = "a"
harfler(3) = "c"
harfler(4) = "d"
harfler(5) = "e"

Open "C:\kullanici" & Trim(Str(1)) & ".txt" For Input As #1 'kullanici1 dosyasını açar
Set ex1 = CreateObject("excel.Application") 'Open("C:\kullanici1.xls")
ex1.Workbooks.Open ("C:\kullanici1.xls")
kisisayisi = 0

While Not EOF(1)

If EOF(1) Then
GoTo bitir
End If

kisisayisi = kisisayisi + 1
For i = 1 To 4
Line Input #1, satir 'döngü içinde satırları okuyacak
ex1.Range(harfler(i) & Trim(Str(kisisayisi))).Value = satir
Next i


Wend

bitir:
ex1.ActiveWorkbook.Save
ex1.Workbooks.Close
Close #1

End Sub


Bu mesaja 1 cevap geldi.
S
18 yıl
Yarbay

Bu sefer textimizin
quote:

mustafa al ahmet ankara
mehmet ali veli samsun

şeklinde olduğunu farzedelim.Yani her bir satırda bir kişiye ait bilgiler boşluk tuşu le ayrılmış olsun. split ile excel için a-b-c-d -e sütunlarını tire (-) ye göre ayırıyoruz. yani arada tire (-) değil de mesela ";" olsaydı komut satırı:
harf = Split("a;b;c;d;e", ";")


şeklinde olacaktı.
 
harf = Split("a-b-c-d-e", "-") 'dizi gibi çalışıyor excel için

burdaki kod satırı. Burda diğer dikkat etmemiz gerken kod
bilgiler = Split(satir, " ") 
kodu.

Bu kod ile textimizdeki dataları, satırlar halinde okuyup boşluklara gelince ayırıyoruz. Kelime kelime bölüyoruz.






 
dim harf
Private Sub Form_Load()

harf = Split("a-b-c-d-e", "-") 'dizi gibi çalışıyor excel için
Open "C:\kullanici" & Trim(Str(1)) & ".txt" For Input As #1 'kullanici1 dosyasını açar
Set ex1 = CreateObject("excel.Application") 'Open("C:\kullanici1.xls")
ex1.Workbooks.Open ("C:\kullanici1.xls")
kisisayisi = 0

While Not EOF(1)

If EOF(1) Then
GoTo bitir
End If

kisisayisi = kisisayisi + 1
Line Input #1, satir 'döngü içinde satırları okuyacak
bilgiler = Split(satir, " ") 'satırı boşluklara gelince ayırcak

For i = 0 To 4 'diziler 1den başlar i-1 yerine yaptık
ex1.Range(harf(i) & Trim(Str(kisisayisi))).Value = bilgiler(i)
Next i

Wend

bitir:
ex1.ActiveWorkbook.Save
ex1.Workbooks.Close
Close #1

End Sub



E
18 yıl
Er

Selam arkadaşlar.

Soru sorma linki bulamadım sayfada, buradan yazıyorum.

Benim bir çalışma yapmam gerekiyor.
Yardımcı olabileceklere şimdiden çok teşekkür ederim.
Temel Korkmaz'ın kitabını da karıştırdım ama, benzer örnek bulamadım.

TOPLAM sayfasındaki A sütununda 1000 adet stok kodu var. B ve C sütunlarına, RAPOR sayfasındaki stok kodlarına uygun olarak ADET ve TUTAR girilecek.

RAPOR sayfasındaki A sütununda, o aya ait satış yapılan ürünlerin stok kodu, B sütununda ADET, C sütununda da TUTAR var.

RAPOR sayfasındaki stok kodlarını tek tek TOPLAM sayfasında bulup satış adet ve tutarlarını soldaki sayfanın sütunlarına elle girmek yerine otomatik nasıl aktarabilirim?

Şimdiden çok teşekkür ediyorum.

Hoşçakalın.
Erdal Demir


Bu mesaja 1 cevap geldi.
D
18 yıl
Yarbay

Makro yazmak için Visual Basic şart mı? C# ile aynı işi görecek bir şeyler yapılamaz mı?


Bu mesaja 1 cevap geldi.
H
18 yıl
Er

merhaba,
benim sorum şu olacak.
excel ile hazırlanmış bir tablonun bir sütunu 13 karakterden oluşan rakamlar le dolu. fakat bu rakamlar birbirinden hiç ayrılmadan yzaılmış. benim isteğim; b rakamları 4.2.3.4 basamaklı olarak yazdırabilmek. mesela 1234567890123 şeklinde bir rakamı 1234.56.789.0123 olarak görünmeli. rakamlar arasında bazen harflerin olduğunu da hatırlatmam gerek snırım. şimdiden tşkler


Bu mesaja 1 cevap geldi.
S
17 yıl
Yarbay
Konu Sahibi

Excel - Access İlişkisi

Access kayıtlarını Excel'e kopyalama

Access'ten, herhangi bir veri sayfası görünümünden veya veri erişim sayfası denetiminden veri kopyalayabilir ve bu verileri Excel'e yapıştırabilirsiniz. Seçtiğiniz birkaç Access kaydının statik bir anlık görüntüsünü istiyorsanız bu yöntemi kullanabilirsiniz.

Ayrıca, bir Access tablosundan (tablo: Belirli bir konu hakkında, kayıtlar (satırlar) ve alanlarda (sütunlar) depolanan verileri topluluğu.), sorgusundan (sorgu: Query veya Access'te, veritabanında depolanan veriler hakkında sorduğunuz belirli bir soruyu yanıtlayan kayıtları bulma yolu.) formundan veya raporundan Excel çalışma kitabına veri kaydedebilirsiniz. Büyük miktardaki Access verisine ilişkin statik bir anlık görüntü istiyorsanız bu yöntemi kullanabilirsiniz.
Not Access veritabanı her değiştiğinde Excel'deki verileri yenilemeniz (yenileme: Verileri bir dış veri kaynağından güncelleştirme. Verileri her güncelleştirmenizde, veritabanındaki bilgilerin en son sürümünü, veriler üzerinde yapılan değişikliklerle birlikte görürsünüz.) gerekmediğinde bu yöntemleri kullanın.

Excel'e yenilenebilir Access verileri getirme

Access veritabanı değiştiğinde çalışma sayfasındaki verileri yenilemek isterseniz;( örneğin, her ay dağıtımını yaptığınız bir Excel özetinin geçerli ayın verileriyle güncellenmesini istiyorsanız) verileri Excel'e getirmek için bir sorgu veya bir Office Veri Bağlantısı dosyası oluşturabilirsiniz. Birden fazla tablodan veri almanız gerekiyorsa bir sorgu oluşturun veya alınan verilerin kapsamını değiştirmeniz gerekip gerekmediğini düşünün. Veritabanında yalnızca bir tablodaki verilerin tümünü almak istiyorsanız bir Office Veri Bağlantısı dosyası kullanın. Verileri Excel'e dış veri aralığı (dış veri aralığı: Bir çalışma sayfasına getirilen, ancak Excel'in dışından, örneğin bir veritabanı veya metin dosyasından kaynaklanan bir veri aralığı. Excel'de verileri biçimlendirebilir veya başka verilerle yaptığınız gibi hesaplamalarda kullanabilirsiniz.) veya Özet Tablo raporu (Özet Tablo raporu: Excel'in dışındakileri de kapsayan çeşitli kaynaklardan gelen veritabanı kayıtları gibi verileri özetleyen ve çözümleyen, etkileşimli, çapraz sekmeli bir Excel raporu.) olarak döndürebilirsiniz. Bunların her ikisi de yenilenebilir.

Excel verilerini yönetmek için Access kullanma

Access veritabanıyla Excel verileri arasından bağlantı kurma Bir Access veritabanına tablo (tablo: Belirli bir konu hakkında, kayıtlar (satırlar) ve alanlarda (sütunlar) depolanan verileri topluluğu.) olarak Excel aralığı bağlayabilirsiniz. Aralığı Excel'de korumaya devam etmeyi planlıyor, ancak Access içinden de kullanılabilir olmasını istiyorsanız bu yöntemi kullanın. Bağlantılı Excel aralığındaki verileri Access veritabanından görüntüleyebilir ve güncelleştirebilirsiniz. Bu tür bağlantıları Excel'den değil, Access veritabanından kurun.

Access veritabanına Excel verileri aktarma Access'te çalışıyor ve veritabanınıza bir Excel çalışma kitabından veri kopyalamak istiyorsanız, verileri Access'e aktarabilirsiniz. Excel'de tutmayı planladığınız küçük bir grup verinin kopyasını varolan bir Access veritabanına, verileri yeniden yazmadan getirmek için bu yöntemi kullanın.

Excel aralığını Access veritabanına dönüştürme Kalıcı olarak Access veritabanına taşımak istediğiniz büyük bir Excel aralığınız varsa, Access veri yönetimi yeteneklerinden, güvenliğinden veya çok kullanıcı yeteneğinden yararlanmak için, verileri Excel'den bir Access veritabanına dönüştürebilirsiniz. Verileri Excel'den Access'e taşımak ve taşıdıktan sonra artık Access'te kullanmak ve korumak için bu yöntemi kullanın.

Excel verilerinden Access raporu oluşturma Access raporları tasarlama konusunda bilgi sahibiyseniz ve Excel verilerinizi bu tür bir raporda özetlemek ve düzenlemek istiyorsanız, Excel aralığınızdaki verilerden bir Access raporu oluşturabilirsiniz.

Excel verileri girmek için Access formu kullanma Excel aralığında veri girmek, bulmak ve silmek için özelleştirilmiş bir form kullanmak isterseniz, aralığınız için bir Access formu oluşturabilirsiniz. Örneğin sırası çalışma sayfanızdaki sütunların sırasından farklı olan bir Excel aralığı için giriş yapmanızı sağlayacak Access formu oluşturabilirsiniz. Bu yöntemi, Access formlarındaki belirli özelliklerin kullanılabilir olmasını istediğinizde kullanın.


Alıntı :http://office.microsoft.com/tr-tr/excel/HP052349701055.aspx





< Bu mesaj bu kişi tarafından değiştirildi serseri -- 15 Nisan 2008; 0:39:17 >
Bu mesaja 1 cevap geldi.
H
17 yıl
Teğmen

Hamit70 in problemi çok basit çözülebilir. Koda gerek yok.
=PARÇAAL(B3;1;4)&"."&PARÇAAL(B3;5;2)&"."&PARÇAAL(B3;7;3)&"."&PARÇAAL(B3;10;4)

ayrıca başta KodGenTR olmak üzere bir çok forum var sadece bukonular için.


Bu mesaja 1 cevap geldi.
B
17 yıl
Er

kod yazmayı bilmeyen fakat makro kullanmak isteyen arkadaşlara önerim,
önce yapmak istediğiniz işlemi makro olarak kaydedin daha sonra kaydettiğiniz makronun içine girerek yapılan işlemdeki kodların mantığını anlamaya çalışmalarıdır. basit bir ornek vermek gerekirse ana sayfadan diğer sayfalara buton koymayı deneyebilirsiniz.



L
17 yıl
Çavuş

excelde sizin forumda verdiğiniz büyük küçük hafr değiştir formülünü visual basicde modül açarak yapıştırıp kaydediyorum.kitap1 olarak kaydediyor ve sadece kitap1 i açtığımda bu makroyu görebiliyorum.tüm excel belgelerine bu makroyu nasıl uygulayabilirim?her excel sayfası açtığımda aynı formülü yazmam gerekmiyordur herhalde...vaktiniz olur cevaplarsanız sevinirim.teşekkürler





< Bu mesaj bu kişi tarafından değiştirildi Lastruth -- 26 Haziran 2008; 23:32:41 >
Bu mesaja 1 cevap geldi.
L
16 yıl
Yarbay

Arkadaşlar aşağıdaki lvideodaki gibi excelde bir labirent hazırlamam gerekiyor. labirenti oluşturdum fakat yön tuşlarına ve imlece görev atayamıyorum. makro kaydetmem lazım yardımcı olurmusuuz? office 2007 türkçe kullanıyorum.

Videoyu izlemek için tıklayınız


Bu mesaja 1 cevap geldi.
C
15 yıl
Er

Peki arkadaslar excelde çizilmiş olan bir grafiği vb.net e aktarma olayı var mıdır var ise bunu bilen var mıdır _?

ben oldukca denedım olmadıı..



M
15 yıl
Er

B
15 yıl
Er

Macroda Top 10 listesi hazırlamak istiyorum. Şöyleki; farklı bir sheet teki verilere bakarak, diğer bir sheet e en yüksek 10 rakamı yazdırmak istiyorum. :)