• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

bir sayfadaki verilere göre sayda açıp isimlendirme

  • Konbuyu başlatan Konbuyu başlatan td877
  • Başlangıç tarihi Başlangıç tarihi
Katılım
11 Ağustos 2015
Mesajlar
80
Excel Vers. ve Dili
2016
TÜRKÇE
merhaba,

Arkadaşlar öncelikle vba bilgim hiç olmadığı için dosyayı direkt koyuyorum inşallah yardımcı olan bir arkadaşım çıkar.

Sorum şu:

Elimde bir veri sayfam birde şablon sayfam var.

Veri sayfamda "poz no" ve "poz adı" diye iki sütunum var. bir butona bastığım zaman excel'in şablon sayfam taslağını kullanarak tüm poz no'larını ayrı ayrı sayfa açmasını sağlamak istiyorum.

Buna ilaveten açtığı tüm bu sayfalara da "E6" satırına ilgili poz no'sunun poz adını yazmasını sağlamak istiyorum. ve bunu bir sirkülasyon haline getirebilir miyiz, yani ben her poz no ve poz adı yazdığım da sayfa oluştura basınca yeni sayfa otomatik açılacak gibi.

Yardımcı olabilirseniz çok memnun olacağım.
 

Ekli dosyalar

Merhaba.

-- ALT+F11 yaparak VBA ekranını görünür kılın.
-- Açılan VBA ekranında üst taraftaki menüden INSERT->MODULE yi seçin,
-- Sağ taraftaki boş alana aşağıdaki kod'u yapıştırın.
-- verisayfam adlı sayfadaki DÜĞMEye sağ tıklayıp MAKRO ATAyı seçin,
-- Açılan küçük ekranda SAYFA_EKLE adlı makroyu fareyle seçerek işlemi onaylayın.
-- Sayfadaki DÜĞMEye tıkladığınızda istediğiniz işlem gerçekleşecektir.
(A ve B sütununa yeni veriler yazdıktan sonra düğmeye tekrar tıkladığınızda yeni veriye göre yeni sayfa oluşacaktır)
NOT: Kod belgenizdeki Sablon sayfasını gizler.
.
Kod:
[FONT="Arial Narrow"][B]Sub SAYFA_EKLE()[/B]
Set veri = Sheets("verisayfam")
Application.ScreenUpdating = False: Sheets("Sablon").Visible = True
For satır = 2 To veri.[B65536].End(3).Row
    For sayfa = 1 To Sheets.Count
        If Sheets(sayfa).Name = veri.Cells(satır, 1) Then GoTo 10
    Next
If veri.Cells(satır, 2) = "" Then
    MsgBox veri.Cells(satır, 1) & " için POZ ADI YAZILI DEĞİL !..." & _
    vbLf & "Bu POZ ADI için sayfa OLUŞTURULMADI." & vbLf & _
    "B sütunundaki boş POZ ADLARINI tamamlayarak, RÜĞMEYE TEKRAR TIKLAYIN..."
    GoTo 10: End If
Sheets("Sablon").Copy After:=Sheets(Sheets.Count)
Sheets("Sablon (2)").Name = veri.Cells(satır, 1)
Sheets(veri.Cells(satır, 1).Value).[D6] = veri.Cells(satır, 1)
Sheets(veri.Cells(satır, 1).Value).[E6] = veri.Cells(satır, 2)
10: Next
Sheets("Sablon").Visible = False: veri.Activate: Application.ScreenUpdating = True
[B]End Sub[/B][/FONT]
 
Sayın Ömer Baran,

Kod çalışıyor. Gerçekten çok teşekkür ediyorum beni çok büyük dertten kurtardınız. Allah razı olsun.
 
Geri
Üst